我以前从未见过 实际使用过的<base>HTML标签.它的使用存在缺陷,这意味着我应该避免它吗?
事实上我从来没有注意到它在现代生产网站(或任何网站)上的使用让我对它持怀疑态度,尽管看起来它可能有用于简化我网站链接的有用应用程序.
使用基本标签几周后,我最终找到了使用基本标签的一些主要问题,这使得它比最初出现时更不可取.从本质上讲,变化href='#topic'和href=''基本标签下是非常有它们的默认行为不兼容,并可以从默认行为,这种变化很容易使第三方库的控制范围之外的非常不可靠的 以意想不到的方式,因为它们在逻辑上依赖于默认行为.通常,这些更改是微妙的,并且在处理大型代码库时会导致不那么明显的问题.我已经创建了一个回答,详细说明了我在下面遇到的问题.因此,在您进行广泛部署之前,请自行测试链接结果<base>,这是我的新建议!
这是我的脚本,试图将我的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) 好的,所以我知道在HTML中你可以使用<b>标签,但是"weight=bold"我没有在<p>标签中使用的属性吗?
或者是CSS或Javascript?
我听到人们一直在谈论依赖注入和它的好处,但我真的不明白它.
我想知道它是否是"我一直将数据库连接作为参数传递"问题的解决方案.
我试过阅读维基百科上的条目,但这个例子是用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)
任何人都有良好的资源或只是洞察力,使方法和利益 - 水晶 - 清楚?
我开始使用诊断css样式表,例如 http://snipplr.com/view/6770/css-diagnostics--highlight-deprecated-html-with-css--more/
建议的规则之一突出显示类型为submit的输入标记,建议将其<button>用作更具语义的解决方案.<button>您遇到过类型提交(例如浏览器兼容性)的优点和缺点是什么?
为了清楚,我理解规范<button>,它有一个定义的开始和结束,它可以包含各种元素,而输入是一个单一的,不能包含东西.我最想知道的是它是否破碎.我想知道当前可用的按钮是多少.不幸的是,下面的第一个答案似乎暗示它已被打破,除了表格以外的用途.
编辑2015年
景观发生了变化!我现在有6年以上的处理按钮的经验,浏览器有点从IE6和IE7转移.所以我会添加一个答案,详细说明我发现的内容以及我的建议.
我需要在postgresql上使用salt散列一些密码,而且我无法找到有关如何完成这些操作的任何相关文档.
那么如何在postgresql中散列密码(带有一些盐)呢?
我正在开始使用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)
当我尝试在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) 由于很多电子邮件客户端忽略了HEAD标记,我可以在体内嵌入内联样式表吗?
在使用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) 这里有一些搜索框的jQuery,我希望它实际上是一个反模式,并且我确信有一个更好的解决方案,我希望能指出:
我将在评论中描述它然后只是给出代码,因为评论可能比代码更清晰和简单:
代码:
// 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) css ×3
git ×3
html ×3
base-tag ×1
button ×1
contextpath ×1
cryptography ×1
delay ×1
diagnostics ×1
email ×1
events ×1
git-clone ×1
git-rebase ×1
git-svn ×1
hash ×1
jquery ×1
php ×1
postgresql ×1
repository ×1
salt ×1
security ×1
settings ×1
tags ×1
whitespace ×1