0

RoToRaからのこのjavascriptコードは、私が望むことを実行します:http://jsbin.com/ayoqem/7/edit#javascript,html,live どの jQueryコードが同じタスクを実行しますか?どちらが良いですか?

4

3 に答える 3

1

もちろん、jQueryを使用する必要がない場合は、既に持っているjavascriptで問題なく動作します。ただし、jQueryを使用している場合は、わずか3行のコードで同じタスクを実行できます。

http://jsfiddle.net/RWzQT/1/

$(document).ready(function() {
    $(".qa input[type=checkbox]").click(function() {
        $(this).parent().parent('div').toggleClass('show_answer');
    });
});​

onclick="hlt_showhide(this)"HTMLからインラインjavascript()も削除したことに注意してください。

于 2012-07-13T02:34:29.267 に答える
0
function hlt_showhide(checkbox) {
   $checkbox = $(checked); // just to cache it really!      
   var qaDiv = $checkbox.parent().parent();  
   if ($checkbox.attr('checked'))  {
       qaDiv.addClass("show_answer");
   } else {
      qaDiv.removeClass("show_answer");
   }
}

しかし、率直に言って、ここで jQuery を使用する意味がわかりません! JSはそのトリックを行います。

于 2012-07-13T02:11:29.327 に答える
0

jQuery が必要ない場合は、使用しないでください。jQuery は JavaScript の上に構築されているため、既に純粋な JS でコードを作成している場合、なぜ jQuery でそれを使用する必要があるのでしょうか??

これに相当する jQuery は、行ごとのフローに関して非常に似ていますが、jQuery を使用.parent()して親要素を選択し、.addClass()&.removeClass()を使用してそれらのアクションを実行するだけです。

于 2012-07-13T01:59:56.113 に答える