0

私のブログには、実際のブログとそのブログへのコメントを含むリピーターがいます。現在、Scriptalicious でコメントの表示/非表示効果を使用しています。しかし、今はそれを Jquery に変更したいと考えています。しかし、私はいくつかの問題を抱えています。この効果を得るには、divごとにjqueryスクリプトを宣言する必要があるようです?

これは、コメントを表示/非表示にするためのリンクが今日ある html です (scriptalicious を使用):

<a href="#" onclick="new Effect.Appear('i<%# Eval("id") %>', {duration: 1});return false;">Show comments (<%# CountComments (DataBinder.Eval(Container, "DataItem.id")) %>)</a> | <a href="#" onclick="new Effect.Fade('i<%# Eval("id") %>', {duration: 0.5});return false;">Hide comments</a>

ご覧のとおりonclick="new Effect.Fade('i<%# Eval("id") %>'、新しい Effect.Fade を使用して ID を渡します。Jqueryでこれを行う方法についてヒントを教えてください。

更新 今では機能しています。受け入れられた回答のコードを使用し、いくつかの小さな調整を行いました。私が現在使用しているリンクは次のようになります。

<a href="javascript:void(0);" title="i<%# Eval("id") %>">Vis kommentarer (<%# CountComments (DataBinder.Eval(Container, "DataItem.id")) %>)</a>

コメントを含む div があり、次のようになります。

<div id="i<%# Eval("id") %>" style="display: none;"><%# GetComments (DataBinder.Eval(Container, "DataItem.id")) %></div>

そして魔法を行う Jquery 関数:

<script type="text/javascript">
$(document).ready(function () {
    $("a:contains('Vis kommentarer')").click(function () {
        $id = $(this).attr('title');
        $('#' + $id + '').show();
        return false;
    })
});

助けてくれてありがとう!:)

4

2 に答える 2

1

このようなことを意味しますか?

$("a:contains('Show comments')").click(function() {
  $id = $(this).attr('id');
  $('#' + id + '').show();
});
于 2012-07-12T12:17:35.790 に答える
0

関数はどうですか?

<a href="#" onclick="show(this,'i<%# Eval("id") %>');">Show comments (<%# CountComments (DataBinder.Eval(Container, "DataItem.id")) %>)</a> | <a href="#" onclick="show(this,'i<%# Eval("id") %>');">Hide comments</a>  
  function show(this, val)
    {
        new Effect.Fade(val, {duration: 0.5});return false;
    }
于 2012-07-12T09:58:57.497 に答える