Jquery和chrome问题

时间:2014-02-17 18:00:56

标签: jquery google-chrome

我有以下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();

由于

2 个答案:

答案 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() { ... })