0

こんにちは、jquery トグル スクリプトに問題があります。

<a class="clickMe">Text 1</a>
</br>
 <div class="sri"> - This text will be toggled</div>

<a class="clickMe">Text 2</a>
</br>
<div class="sri"> - This text will be toggled 2</div>


$('a.clickMe').click(function () {
// find first of following DIV siblings
// with class "textBox" and toggle it

$(this).nextAll('div.sri:first').show();
$('div.sri:visible').not($(this).nextAll('div.sri:first')).toggle();
});

上記のスクリプトは正常に動作しています。デモを確認してください

<div idしかし、スクリプトの機能を変更せずに代わりに使用する必要があるもの<div class...多くの方法を試しましたが、まだいくつかの問題があります...使用する必要がないかもしれませ<a class="clickMe">んこれを修正する方法はありますか?

4

2 に答える 2

2

要素に割り当てられたIDを繰り返さないように注意してください。

XHTML1.0のいくつかの仕様は次のとおりです。

XMLでは、フラグメント識別子はタイプIDであり、要素ごとにタイプIDの属性は1つだけです。したがって、XHTML 1.0では、id属性はタイプIDであると定義されています。XHTML 1.0ドキュメントが適切に構造化されたXMLドキュメントであることを保証するために、XHTML 1.0ドキュメントは、上記の要素でフラグメント識別子を定義するときにid属性を使用する必要があります。XHTMLドキュメントをメディアタイプtext/htmlとして提供するときに、このようなアンカーに下位互換性を確保する方法については、HTML互換性ガイドラインを参照してください。

于 2012-09-05T11:54:47.893 に答える
0

一意のIDの場合:

<a class="clickMe" toggle="first">Text 1</a>
</br>
 <div id="first" class="text"> - This text will be toggled</div>

<a class="clickMe" toggle="second">Text 2</a>
</br>
<div id="second" class="text"> - This text will be toggled 2</div>


$('a.clickMe').click(function () {
   id = $(this).attr('toggle');
   $('.text').not('#' + id).hide();
   $('#' + id).show();
});

私のデモまたは編集したデモまたは3番目のデモを参照してください。

于 2012-09-05T11:55:33.573 に答える