2011-06-13 56 views
-1

我查询的伟大工程,但后来我检查它在IE浏览器,这是一个灾难。我想知道它是否是代码的父代部分。父母正试图达到含有信息的第一个<table>。有没有更简单的方法直接进入桌子?为什么查询在IE中失败的唯一

<script> 
if ($('b:contains("Choose a sub category:")').length > 0) { 
var newSubnav = document.createElement('ul'); 
$(newSubnav).addClass("sub_categories_holder"); 
    $('b:contains("Choose a sub category:")').parent().parent().parent().parent().parent().parent().parent().prepend(newSubnav); 

$('a.subcategory_link').appendTo($('ul.sub_categories_holder')); 
$('a.subcategory_link').wrap("<li class='sub_categories'></li>"); 
$('li.sub_categories').before("<li class='sub_categories_divider'></li>"); 
$("li.sub_categories_divider:eq(0)").remove(); 

$("b:contains('Choose a sub category:')").parent().parent().parent().parent().parent().remove(); 
$("img[src='/v/vspfiles/templates/GFAR NEW NAV/images/Bullet_SubCategory.gif']").remove(); 
$("td.colors_backgroundneutral").css("background-color","transparent"); 
$("td.colors_backgroundneutral").children(':first-child').attr("cellpadding","0"); 
}; 

</script> 

回答

1

除非你提供你的标记(至少是一个虚拟的标记),否则你都会猜到你会得到。

  1. 而不是.parent().parent().parent().parent().parent().parent().parent().prepend(newSubnav);检查是否可以使用.parents()。这将使您的父母一路返回到HTML。你甚至可以使用选择器作为父母(选择器)来过滤。阅读更多关于jquery api页面。

  2. 既然你使用jQuery,您可以使用$("ul")代替document.createElement("ul")

相关问题