让它包含一个唯一的数据

Make this including a unique data

本文关键字:数据 唯一 包含一      更新时间:2023-09-26

因为我将有多个地方,这是,我想让它与唯一的数据工作。

<a class="snippet_show_answers" href="#">Se svar</a>,然后可能像<a DATA="1" class="snippet_show_answers" href="#">Se svar</a>,然后应该运行作为我的脚本的一部分,这样它只处理点击的数据,而不是所有的框。

我的HTML是这样的(有多个):

<p class="snippet_answers">Svar: 3 - <span class="green"><a class="snippet_show_answers" href="#">Se svar<img src="images/answerarrow.png" alt="answerswerarrow" height="14" width="13"></a><a class="snippet_hide_answers" href="#" style="display: none;">Skjul svar<img src="images/answerarrow.png" alt="answerswerarrow" height="14" width="13"></a></span><hr />
    <div class="answerswers" style="display: none;">
        <p>blablabla</p>
    </div>
</p>

我的JS是这样的:

$('.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;
});

另外,如果您使用的是最新版本的jQuery,确保将.live()更改为.on().live()最近已弃用