即使文档中不存在ID,也会调用函数

GET*_*Tah 2 javascript jquery asp.net-mvc-3

我有以下javascript:

 $(document).ready(function () {
    ...
    $("#mySelector").ready(function () {
        window.alert('What the hell!!!');
    });
 });
Run Code Online (Sandbox Code Playgroud)

我希望每次mySelector出现在文档中的某个位置时都会出现弹出窗口.

我现在面临的问题是这个代码正在运行(我得到一个弹出窗口),即使文档中不存在选择器.

为什么会这样?

und*_*ned 5

readyDOM准备就绪时执行函数,实际上ready即使你没有向jQuery传递任何参数也会触发事件,即$().ready()忽略了选择器.你可以使用length财产:

$(document).ready(function () {
    if ( $("#mySelector").length ) {
       // ...
    }
});
Run Code Online (Sandbox Code Playgroud)