Javascript 如何修改此e.preventDefault以在除主页之外的所有页面上工作?

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();

我在让ColorBox在我的网站上运行时遇到了一些脚本问题

最初,它被编码为覆盖默认链接follow'launch(this);'每当在链接上找到class.boxElement时

我试图修改它,使覆盖仅在它不是主页时发生,但似乎不会触发。相反,它只是防止覆盖所有页面

$('.' + 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所指出的,我的代码有点混乱。非常感谢,非常感谢!