$j('.sentence').toggle(
function(){
$j(".tooltip:not(this)").hide();
$j(".question-tt").show();
$j(this).parent().find(".answer-tt").show();
$j(this).parent().find("span").show();
$j(this).parent().find(".show").show();
$j(this).parent().find(".explanation").hide();
$j(this).parent().find(".hide").hide();
$j(".sentence:not(this)").removeClass("current-2");
$j(this).addClass("current-2");
},
function(){
$j(this).removeClass("current-2");
$j(this).parent().find(".answer-tt").hide();
});
我有很多.sentence
个div,当我点击其中一个div时很多次切换就好了,但是当我经常点击其他的时,它有时不会得到任何点击,1-2秒后它会再次运作。
这适用于Chrome,但不适用于FF和IE。
这可能是因为切换过程中有很多动作,但我需要保留它们
对于实例:http://bit.ly/pG4Uma点击第一个“查看此部分”然后再次第一行,您会看到有4行在点击时有切换操作,然后逐个点击,您可以看到问题。 ..
答案 0 :(得分:0)
您可以按如下方式优化功能,
$j('.sentence').toggle(
function(){
$j(".tooltip:not(this)").hide();
$j(".question-tt").show();
var parentElement = $j(this).parent();
parentElement.find(".answer-tt").show();
parentElement.find("span").show();
parentElement.find(".show").show();
parentElement.find(".explanation").hide();
parentElement.find(".hide").hide();
$j(".sentence:not(this)").removeClass("current-2");
$j(this).addClass("current-2");
},
function(){
$j(this).removeClass("current-2");
$j(this).parent().find(".answer-tt").hide();
});
同样,您可以添加隐藏元素的css样式,而不是执行以下操作,
parentElement.find(".show").show();
parentElement.find(".hide").hide();