小编Kzq*_*qai的帖子

对html <base>标签有什么建议?

我以前从未见过 实际使用过的<base>HTML标签.它的使用存在缺陷,这意味着我应该避免它吗?

事实上我从来没有注意到它在现代生产网站(或任何网站)上的使用让我对它持怀疑态度,尽管看起来它可能有用于简化我网站链接的有用应用程序.


编辑

使用基本标签几周后,我最终找到了使用基本标签的一些主要问题,这使得它比最初出现时更不可取.从本质上讲,变化href='#topic'href=''基本标签下是非常有它们的默认行为不兼容,并可以从默认行为,这种变化很容易使第三方库的控制范围之外的非常不可靠的 以意想不到的方式,因为它们在逻辑上依赖于默认行为.通常,这些更改是微妙的,并且在处理大型代码库时会导致不那么明显的问题.我已经创建了一个回答,详细说明了我在下面遇到的问题.因此,在您进行广泛部署之前,请自行测试链接结果<base>,这是我的新建议!

html base-tag contextpath

454
推荐指数
8
解决办法
15万
查看次数

Git rebase失败,'您对以下文件的本地更改将被合并覆盖'.没有本地变化?

这是我的脚本,试图将我的bugfix分支合并到我的主分支上,准备将其推向上游.自bugfix分支创建以来,已经有一些上游更改被拉入master,现在它拒绝rebase.

它抛出错误的文件在打开时不会被分散.没有添加,删除或重命名的文件.没有任何东西被忽略,没有任何东西没有被追踪或上演或未分期.我完全不知道为什么rebase失败了.

我在OS X 10.6.6和git 1.7.4上

.-(/Volumes/joshua/www/txfunds)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(joshua@Kusanagi)-
`--> git rebase bug586-test master-test
First, rewinding head to replay your work on top of it...
Applying: - comiitting code related to api permissions
Using index info to reconstruct a base tree...
Falling back to patching base and 3-way merge...
error: Your local changes to the following files would be overwritten by merge:
    inc/data.inc
    templates/apipermissions_tpl.inc
    templates/currencies_tpl.inc
Please, commit your changes or stash them before you can merge.
Aborting
Failed to merge in the …
Run Code Online (Sandbox Code Playgroud)

git git-rebase

97
推荐指数
2
解决办法
2万
查看次数

替代HTML Bold标记

好的,所以我知道在HTML中你可以使用<b>标签,但是"weight=bold"我没有在<p>标签中使用的属性吗?

或者是CSS或Javascript?

html css

78
推荐指数
9
解决办法
27万
查看次数

如何在简单的PHP函数中使用"依赖注入",我应该打扰吗?

我听到人们一直在谈论依赖注入和它的好处,但我真的不明白它.

我想知道它是否是"我一直将数据库连接作为参数传递"问题的解决方案.

我试过阅读维基百科上的条目,但这个例子是用Java编写的,所以我不能完全理解它试图弄清楚它的区别.(http://en.wikipedia.org/wiki/Dependency_injection).

我读了这篇依赖注入的php文章(http://www.potstuck.com/2009/01/08/php-dependency-injection/),似乎目标是不将依赖项传递给对象直接,但封锁对象的创建以及它的依赖关系的创建.不过,我不知道如何在使用php函数上下文中应用它.

另外,是以下的依赖注入,我是否应该尝试在功能上下文中进行依赖注入?

版本1 :(我创建的代码类型,但每天都不喜欢)

function get_data_from_database($database_connection){
    $data = $database_connection->query('blah');
    return $data;
}
Run Code Online (Sandbox Code Playgroud)

版本2 :(不必传递数据库连接,但可能不是依赖注入?)

function get_database_connection(){
    static $db_connection;
    if($db_connection){
        return $db_connection;
    } else {
        // create db_connection
      ...
    }
}

function get_data_from_database(){
   $conn = get_database_connection();
   $data = $conn->query('blah');
   return $data;
}

$data = get_data_from_database();
Run Code Online (Sandbox Code Playgroud)

版本3 :("对象"/数据的创建是独立的,数据库代码仍然是,所以这可能算作依赖注入?)

function factory_of_data_set(){
    static $db_connection;
    $data_set = null;
    $db_connection = get_database_connection();
    $data_set = $db_connection->query('blah');
    return $data_set;
}

$data = factory_of_data_set();
Run Code Online (Sandbox Code Playgroud)

任何人都有良好的资源或只是洞察力,使方法和利益 - 水晶 - 清楚?

php dependency-injection parameter-passing

67
推荐指数
3
解决办法
3万
查看次数

<button>标签有什么缺点?

我开始使用诊断css样式表,例如 http://snipplr.com/view/6770/css-diagnostics--highlight-deprecated-html-with-css--more/

建议的规则之一突出显示类型为submit的输入标记,建议将其<button>用作更具语义的解决方案.<button>您遇到过类型提交(例如浏览器兼容性)的优点和缺点是什么?

为了清楚,我理解规范<button>,它有一个定义的开始和结束,它可以包含各种元素,而输入是一个单一的,不能包含东西.我最想知道的是它是否破碎.我想知道当前可用的按钮是多少.不幸的是,下面的第一个答案似乎暗示它已被打破,除了表格以外的用途.

编辑2015年

景观发生了变化!我现在有6年以上的处理按钮的经验,浏览器有点从IE6和IE7转移.所以我会添加一个答案,详细说明我发现的内容以及我的建议.

css tags diagnostics button internet-explorer-7

64
推荐指数
6
解决办法
3万
查看次数

如何在postgresql中哈希密码?

我需要在postgresql上使用salt散列一些密码,而且我无法找到有关如何完成这些操作的任何相关文档.

那么如何在postgresql中散列密码(带有一些盐)呢?

security postgresql hash cryptography salt

47
推荐指数
3
解决办法
7万
查看次数

从svn存储库克隆git存储库,导致无文件,远程无分支的git repo

工作SVN回购

我正在开始使用git repo与svn repo进行交互.svn存储库设置正常,只需提交一个基本的README文件.

检查出来工作正常:

tchalvak:~/test/svn-test$ 
svn checkout --username=myUsernameHere http://www.url.to/project/here/charityweb/
A    charityweb/README
Checked out revision 1.
Run Code Online (Sandbox Code Playgroud)

svn repo的git-svn克隆失败

当我尝试在git中克隆存储库时,第一步显示没有错误...

tchalvak:~/test$ 
git svn clone -s --username=myUserNameHere http://www.url.to/project/here/charityweb/
Initialized empty Git repository in /home/tchalvak/test/charityweb/.git/
Authentication realm: <http://www.url.to/project/here:80> Charity Web
Password for 'myUserNameHere': 
Run Code Online (Sandbox Code Playgroud)

...但是导致无用的文件夹,不包含文件,没有分支,也没有提交:

tchalvak:~/test$ ls
charityweb
tchalvak:~/test$ cd charityweb/
tchalvak:~/test/charityweb$ ls
tchalvak:~/test/charityweb$ ls -al
total 12
drwxr-xr-x 3 tchalvak tchalvak 4096 2010-04-02 13:46 .
drwxr-xr-x 4 tchalvak tchalvak 4096 2010-04-02 13:46 ..
drwxr-xr-x 8 tchalvak tchalvak 4096 2010-04-02 13:47 .git
tchalvak:~/test/charityweb$ git …
Run Code Online (Sandbox Code Playgroud)

git git-svn repository git-clone

42
推荐指数
1
解决办法
1万
查看次数

我可以在HTML文件的正文中放置<style> ... </ style>标记以通过电子邮件发送吗?

由于很多电子邮件客户端忽略了HEAD标记,我可以在体内嵌入内联样式表吗?

html css email

41
推荐指数
4
解决办法
5万
查看次数

git whitespace woes

空白的冲突很糟糕

在使用git时,空白对我来说是一种可怕的痛苦.

git config apply.whitespace=strip
Run Code Online (Sandbox Code Playgroud)

似乎会增加你获得冲突的机会(当你删除不需要的空格,然后其他合作者将剥离的空白视为对其提交的更改?)

我过去曾尝试过其他一些配置apply.whitespace,也许其他配置中的一个可以解决这个问题,或者可能还有其他设置来处理我刚才没有遇到的空白,但我还没有找到明确的如何到达我想要的地方.

我想默默地解决空白冲突:

我从不想在空白上再发生冲突.如果另一个提交者改变了空格,或者我改变了空格然后必须合并我自己的冲突,我真的不想知道它.如果有人通过更改空格将我的代码从K&R样式更改为One True Brace样式,我更喜欢git允许空白设置赢得而不必看到它的冲突.我只是不太关心空白想要看到它的冲突.

所以......有什么方法可以配置git来做到这一点?

如果它有任何区别,这是我的git版本,以及我当前的配置:

tchalvak:~/ninjawars$ git --version
git version 1.6.0.4

tchalvak:~/ninjawars$
git config --list
color.branch=auto
color.diff=auto
color.status=auto
color.branch.current=yellow reverse
color.branch.local=yellow
color.branch.remote=green
color.diff.meta=yellow bold
color.diff.frag=magenta bold
color.diff.old=red bold
color.diff.new=green bold
color.status.added=yellow
color.status.changed=green
color.status.untracked=cyan
gui.recentrepo=/home/tchalvak/zd/htdocs/cms
apply.whitespace=strip
user.name=****
user.email=****
alias.co=checkout
github.user=tchalvak
github.token=****
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
remote.origin.url=...@github.com:tchalvak/ninjawars.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master 
Run Code Online (Sandbox Code Playgroud)

git settings whitespace

34
推荐指数
2
解决办法
2万
查看次数

惯用jQuery延迟事件(仅在打字后短暂停顿)?(又名时间表/手表/键表)

这里有一些搜索框的jQuery,我希望它实际上是一个反模式,并且我确信有一个更好的解决方案,我希望能指出:

我将在评论中描述它然后只是给出代码,因为评论可能比代码更清晰和简单:

  • //在按键上设置函数调用.
  • //函数调用在主事件发生之前有一个延迟.
  • //当调用keypress函数时,擦除任何先前排队的事件并以标准延迟率创建一个新事件.
  • //使用全局来存储setTimeout指针.
  • // clearTimeout任何预先存在的指针.
  • //开始新的延迟

代码:

                // set up a filter function call on keypress.
                $('#supplier-select-filter').keypress(function (){
                    // Currently, resets a delay on an eventual filtering action every keypress.
                    filterSuppliers(.3, this);
                });

                // Delayed filter that kills all previous filter request.
                function filterSuppliers(delay, inputbox){
                    if(undefined != typeof(document.global_filter_trigger)){
                        clearTimeout(document.global_filter_trigger);
                        // clearTimeout any pre-existing pointers.
                    }
                    // Use a global to store the setTimeout pointer.
                    document.global_filter_trigger = setTimeout(function (){
                        var mask = $(inputbox).val();
                        $('#user_id').load("supplier.php?action=ajax_getsuppliers_html&mask="+escape(mask)); 
                    }, 1000*delay); 
                    // Finally, …
Run Code Online (Sandbox Code Playgroud)

jquery events delay

33
推荐指数
1
解决办法
1万
查看次数