-1

id='1' のボタンが 2 つあります。最初のボタンをクリックするとフェードアウトしますが、2番目のボタンを押しても変化しません。

$("#1").click(function()
{
$("#1").fadeOut("slow");
});
4

4 に答える 4

5

同じセレクターを使用して2つのアイテムをフェードアウトする場合は、IDは一意である必要があります。たとえば、共通のクラスを使用します。

HTML

<span class="fademe">Bla</span>
<span class="fademe">Bla</span>

JavaScript

$('.fademe').fadeOut('slow');
于 2012-11-20T21:53:19.063 に答える
4

同じIDを持つ2つのボタンを持つことはできません。ブラウザはIDが一意であると想定し、JavaScriptは指定されたIDを持つ最初の要素のみを認識します。

すぐに誰かがIDを数字で始めることはできないと言うでしょうが、それはHTML 4にのみ当てはまり、とにかくブラウザによって強制されることはめったにありません。それでも、それは悪い習慣と考えられています。

代わりに共通のクラスを使用してください。

$(".one").click(function() {
    $(".one").fadeOut("slow");
});
于 2012-11-20T21:52:16.240 に答える
2

複数のものをフェードするには、 classを使用できます。

HTML

<div class="fade" id="fadeOne">Fade One</div>
<div class="fade" id="fadeTwo">Fade Two</div>

<input type="button" id="fadeButton" value="Fade" />

JS

$('#fadeButton').click(function() {
    $('.fade').fadeOut(); 
});

jFiddle

http://jsfiddle.net/4WDV8/

編集

私は今日とても遅いです、アンディはそれを正しく理解しています!

于 2012-11-20T21:55:34.610 に答える
0

ID は要素ごとに一意である必要があります。代わりにクラスを使用してみてくださいid

これを試して、

<span id="1" class="span">Bla</span>
<span id="2" class="span">Bla</span>

$(".span").click(function(){
  $(this).fadeOut("slow");
});
于 2012-11-21T07:36:02.487 に答える