我知道,我知道,IE6是魔鬼,但我别无选择,只能在这个项目上使用它。当我尝试删除父div时,它可以在除IE之外的每个浏览器中工作(尚未在其他版本中检查)。 知道为什么吗? - 刚刚添加了一些HTML
$('a#remove-product'+i).click(function(event){
$(this).parent('.product').remove();
i--;
});
<div class="product" id="product1">
<h2>Product 1</h2>
<div class="info-line">
<label>Division</label>
<p><select id="selection-1">
<option value="">- Select a Division -</option>
<option value="abrasives">Abrasives</option>
<option value="tapes">Bonding, Surface Protection & Tapes</option>
<option value="packaging">Packaging</option>
</select></p>
<a id="remove-product1" href="#add-product" class="remove">Remove Product</a></div>
</div>
答案 0 :(得分:2)
您何时运行此代码? IE应该没有任何特殊问题,除非它不在document.ready
中,在这种情况下你需要像这样包装它:
$(function() {
$('a#remove-product'+i).click(function(event){
$(this).parent('.product').remove();
i--;
});
});
或者,如果IE认为它不是父母,那么您可能需要.closest()
而不是.parent()
。
在任何一种情况下粘贴HTML都会更有帮助,但这些是与IE相关的非常常见的问题,即使在IE版本中也没有做过标准的事情。
答案 1 :(得分:-1)
可能值得一提的是,您将通过使用bind()而不是click()来避免一些问题,例如:
$('.someElement').bind('click', function(){
SomeFunction(); //or any code for that matter
})