繁体   English   中英

jQuery包含文件-分配给另一个页面的功能?

[英]jQuery include file - functions assigned to another page?

我有一个.JS包含文件,适用于多个页面。 但是,对于一页,我现在采用了一种jquery方法,并使用

$("").on("click","#id",function(){});

在我的一些元素上。 但是现在当我转到一个没有该元素的页面时,它将标记为错误。 无论如何,如果它们没有出现在页面上,它只是简单地忽略这些元素? 否则,我将不得不为每个页面编写单独的.JS文件,并且我确定这不是正确的方法。

谢谢你的帮助。 :)

(注意:我指定标签等,我只是举一个例子,我表示歉意,我删除了标签名称。让我们将标签称为#mydiv。当使用上述子句时,在没有#mydiv的页面上,我得到一个控制台错误。但是,在确实有#mydiv的页面上就可以了!所以问题是:如何阻止捕获该错误?)

您的错误应与其他内容相关,因为如果某些元素不存在, on不会引发任何错误。 试试看

$("body").on("click","#id",function(){});

如果还可以使用内部容器代替body

$("#your-control-container").on("click","#id",function(){});

我将在黑暗中刺痛,并猜测不需要jQuery部分的页面在包含上述.js文件之前不会使用<script>标记加载jQuery。 在这种情况下,您的jQuery代码将引发错误,因为未定义$()函数(这只是jQuery()的简写)。

您应该可以通过测试window.jQuery来解决这个问题window.jQuery文件中并未定义window.jQuery

if(window.jQuery) {
    // code that uses jQuery here
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM