Javascript 如何修改此e.preventDefault以在除主页之外的所有页面上工作?
我在让ColorBox在我的网站上运行时遇到了一些脚本问题 最初,它被编码为覆盖默认链接follow'launch(this);'每当在链接上找到class.boxElement时 我试图修改它,使覆盖仅在它不是主页时发生,但似乎不会触发。相反,它只是防止覆盖所有页面Javascript 如何修改此e.preventDefault以在除主页之外的所有页面上工作?,javascript,jquery,wordpress,colorbox,Javascript,Jquery,Wordpress,Colorbox,我在让ColorBox在我的网站上运行时遇到了一些脚本问题 最初,它被编码为覆盖默认链接follow'launch(this);'每当在链接上找到class.boxElement时 我试图修改它,使覆盖仅在它不是主页时发生,但似乎不会触发。相反,它只是防止覆盖所有页面 $('.' + boxElement, document).live('click', function (e) { if ( !is_home() ) { e.preventDefault();
$('.' + boxElement, document).live('click', function (e) {
if ( !is_home() ) {
e.preventDefault();
launch(this);
} else { return true; }
});
有人能提供一些帮助吗?我敢肯定这是一个简单的错误。对于您的主页,此函数应该返回true
var is_home = function(){
return window.location.href.indexOf("some_part_of_home_url") > -1;
}
对于您的主页,此函数应返回true
var is_home = function(){
return window.location.href.indexOf("some_part_of_home_url") > -1;
}
请给我们看一下您的
is_home()
函数好吗?.live()
函数已经被弃用好几个月了(自jQuery 1.7发布以来),并在1.9中被完全删除。您应该切换到使用.on()
(1.7+)或.delegate()
-查看.live()
的文档,了解从一个转换到另一个的详细信息。@BenM-我有一种有趣的感觉,这是一个PHP和JS混搭。is_home()是内置的Wordpress PHP函数。泰勒,我说得对吗?事实上,我也是这么想的@麦克纳布——事实上,这就是错误所在。我是新来的、迷路的、困惑的:/Alen下面的回答让我走上了正确的道路。非常感谢大家,非常感谢。请给我们看一下您的is_home()
函数好吗?.live()
函数已经被弃用好几个月了(自从jQuery 1.7发布以来),并且在1.9中被完全删除。您应该切换到使用.on()
(1.7+)或.delegate()
-查看.live()
的文档,了解从一个转换到另一个的详细信息。@BenM-我有一种有趣的感觉,这是一个PHP和JS混搭。is_home()是内置的Wordpress PHP函数。泰勒,我说得对吗?事实上,我也是这么想的@麦克纳布——事实上,这就是错误所在。我是新来的、迷路的、困惑的:/Alen下面的回答让我走上了正确的道路。非常感谢你们,非常感谢。太好了,谢谢。正如@McNab所指出的,我的代码有点混乱。非常感谢,非常感谢!太好了,谢谢。正如@McNab所指出的,我的代码有点混乱。非常感谢,非常感谢!