我有以下jquery代码在firefox和safari中工作正常但在chrome中没有。
基本上我只想在页面加载时运行以下代码:
$("ul#menu-master_menu li ul li a span.sf-sub-indicator:first-child").remove();
出于某种原因,我无法使其工作,所以我将其设置为运行图像加载如下:
$(window).load(function() {
$("#logoLoader").load(function(){
$("ul#menu-master_menu li ul li a span.sf-sub-indicator:first-child").remove();
}).attr('src', 'http://localhost/wordpress/wp-content/themes/volumes/images/logo.png');
});
这在chrome中不起作用。任何人都可以请给我一个解决方案或解释为什么它不能用于chrome。正如我所提到的,我只需要运行这行代码:
$("ul#menu-master_menu li ul li a span.sf-sub-indicator:first-child").remove();
由于
答案 0 :(得分:0)
我将在这里发布,尽管这将是一个评论。我在这里写这个来解释这种情况下的调试,我不能在评论框中
您想调试选择器。如果您确定问题出在此行中,则需要对其进行调试。我们可以尝试查看它是否是选择器,并在运行中将其复杂化:
// In the $(document).ready(); :
console.log( $("ul#menu-master_menu").length );
console.log( $("ul#menu-master_menu").length );
console.log( $("ul#menu-master_menu li").length );
console.log( $("ul#menu-master_menu li ul").length );
console.log( $("ul#menu-master_menu li ul li").length );
console.log( $("ul#menu-master_menu li ul li a").length );
console.log( $("ul#menu-master_menu li ul li a span").length );
console.log( $("ul#menu-master_menu li ul li a span.sf-sub-indicator").length );
console.log( $("ul#menu-master_menu li ul li a span.sf-sub-indicator:first-child").length );
这应该会在调试器中为您提供9个日志项。如果没有,找出它失败的地方
如果它确实有效9行,请将.remove()
切换为.css({background:'pink'})
以查看它是否选择了正确的元素。
答案 1 :(得分:0)
此行在页面加载完成后触发事件
$(window).load(function() {
以下功能没有触发
$( “#logoLoader”)负载(函数(){});
尝试将$(window).load( function() {})
更改为$( document ).ready( function() { ... })