Javascript 使其包含唯一的数据
由于我将在多个地方使用它,因此我希望让它使用唯一的数据 例如,而不是Javascript 使其包含唯一的数据,javascript,jquery,html,Javascript,Jquery,Html,由于我将在多个地方使用它,因此我希望让它使用唯一的数据 例如,而不是,然后可能是类似的东西,它应该作为脚本的一部分运行,这样它只处理单击的数据,而不是所有的框 我的HTML是这样的(有多个): 希望有人能理解我,因为我以前见过这种方法,但我不知道它的名字,或者别的什么 感谢您的高级帮助。获取对已单击项的父元素的引用,然后使用适当的类查找其子元素: $('.snippet_show_answers').live("click", function() { var item = $(this
,然后可能是类似
的东西,它应该作为脚本的一部分运行,这样它只处理单击的数据,而不是所有的框
我的HTML是这样的(有多个):
希望有人能理解我,因为我以前见过这种方法,但我不知道它的名字,或者别的什么
感谢您的高级帮助。获取对已单击项的父元素的引用,然后使用适当的类查找其子元素:
$('.snippet_show_answers').live("click", function() {
var item = $(this).closest(".snippet_answers");
item.find('.answers').slideDown("slow");
item.find('.snippet_show_answers').fadeOut("slow");
item.find('.snippet_hide_answers').fadeIn("slow");
return false;
});
$('.snippet_hide_answers').live("click", function() {
var item = $(this).closest(".snippet_answers");
item.find('.answers').slideUp("slow");
item.find('.snippet_hide_answers').fadeOut("slow");
item.find('.snippet_show_answers').fadeIn("slow");
return false;
});
另外,如果您使用的是最新版本的jQuery,请确保将
.live()
更改为.on()
.live()
最近被弃用。DIV
不能是p
标记的子项..需要从有效的htmlOkay开始,谢谢你的提醒,我会解决这个问题:)如果我误解了你,请阻止我:你试图让JavaScript只在点击的段落上运行,但目前,当点击时,JavaScript在每个段落上运行?好的,我会写一个答案。D:I’我很期待,非常感谢。但当我使用此选项时,.answers
由于某种原因不会滑动。有什么想法吗?@ErikHansen-将您的外部
更改为
。
不能包含子
,也不需要结束标记。当HTML解析器遇到第二个
时,它会自动关闭第一个
,从而改变DOM层次结构。随后的
将被忽略。对外部元素使用
应该可以解决这个问题。非常感谢。我现在开始工作了:)我会记得最近的呼叫,将来可能有用。
$('.snippet_show_answers').live("click", function() {
$('.answers').slideDown("slow");
$('.snippet_show_answers').fadeOut("slow");
$('.snippet_hide_answers').fadeIn("slow");
return false;
});
$('.snippet_hide_answers').live("click", function() {
$('.answers').slideUp("slow");
$('.snippet_hide_answers').fadeOut("slow");
$('.snippet_show_answers').fadeIn("slow");
return false;
});
$('.snippet_show_answers').live("click", function() {
var item = $(this).closest(".snippet_answers");
item.find('.answers').slideDown("slow");
item.find('.snippet_show_answers').fadeOut("slow");
item.find('.snippet_hide_answers').fadeIn("slow");
return false;
});
$('.snippet_hide_answers').live("click", function() {
var item = $(this).closest(".snippet_answers");
item.find('.answers').slideUp("slow");
item.find('.snippet_hide_answers').fadeOut("slow");
item.find('.snippet_show_answers').fadeIn("slow");
return false;
});