jquery代码适用于控制台,但不适用于脚本标记或附加的js文件

Sru*_*ula 5 jquery click

$(".filter-close").click(function(){
    $(this).parent().remove();

});
Run Code Online (Sandbox Code Playgroud)

此代码段在控制台中工作,但在脚本标记和附加的js文件中都不起作用.

D4V*_*V1D 7

在调用事件处理程序时,等待DOM准备就绪:

jQuery(function($) { // this does the trick and also makes sure jQuery is not conflicting with another library 
    $(".filter-close").click(function(){
        $(this).parent().remove();
    });
});
Run Code Online (Sandbox Code Playgroud)

当使用另一个JavaScript库时,我们可能希望调用$ .noConflict()来避免名称空间困难.当调用此函数时,$快捷方式不再可用,每次我们通常写$时都会强制我们编写jQuery.但是,传递给.ready()方法的处理程序可以接受一个参数,该参数传递给全局jQuery对象.这意味着我们可以在.ready()处理程序的上下文中重命名对象,而不会影响其他代码

.ready()方法文档