Javascript jQuery是否包含分配给其他页面的文件函数?

Javascript jQuery是否包含分配给其他页面的文件函数?,javascript,jquery,ajax,include,Javascript,Jquery,Ajax,Include,我有一个.JS include文件,它适用于多个页面。然而,对于一个页面,我现在采用了jquery方法,并使用 $("").on("click","#id",function(){}); 在我的一些元素上。但现在,当我转到一个没有该元素的页面时,它会标记为错误。如果这些元素没有出现在页面上,它会忽略这些元素吗?否则,我将不得不为每个页面分别编写.JS文件,我确信这不是正确的方法 谢谢你的帮助 注意:我正在指定标签等,我只是举个例子,我道歉,我删除了标签名。让我们调用标记mydiv。当使用上述子

我有一个.JS include文件,它适用于多个页面。然而,对于一个页面,我现在采用了jquery方法,并使用

$("").on("click","#id",function(){});
在我的一些元素上。但现在,当我转到一个没有该元素的页面时,它会标记为错误。如果这些元素没有出现在页面上,它会忽略这些元素吗?否则,我将不得不为每个页面分别编写.JS文件,我确信这不是正确的方法

谢谢你的帮助


注意:我正在指定标签等,我只是举个例子,我道歉,我删除了标签名。让我们调用标记mydiv。当使用上述子句时,在没有mydiv的页面上,我得到一个控制台错误。但是,在有mydiv的页面上,这是非常好的!所以问题是:我如何才能阻止该错误被捕获?

您的错误应该与其他错误相关,因为如果某个元素不存在,on不会抛出任何错误。试一试

$("body").on("click","#id",function(){});
If也可以使用内部容器而不是主体


我将在黑暗中试探一下,猜测不需要jQuery部分的页面在包含上述.js文件之前没有使用标记加载jQuery。如果是这种情况,jQuery代码将抛出一个错误,因为没有定义$function,它只是jQuery的缩写

您应该能够通过测试window.jQuery在JavaScript文件中没有未定义来绕过这一问题:

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

假设jQuery已加载到所有页面上,它非常擅长处理零元素与选择器匹配的情况。也就是说,我认为$不是一个有效的选择器。如果没有更具体的元素可供使用,请使用$document.on.;.$保证不选择任何内容。你得到了什么错误?是的,我想是因为我使用了$document.onclick。。。。现在已经整理好了,谢谢!
if(window.jQuery) {
    // code that uses jQuery here
}