这个来自 RoToRa 的 javascript 代码可以满足我的需求:http://jsbin.com/ayoqem/7/edit#javascript,html,live 什么 jQuery 代码可以完成同样的任务?哪个更好?
问问题
70 次
3 回答
1
当然,如果您不需要使用 jQuery,那么您已经拥有的 javascript 就可以了。但是,如果您使用 jQuery,那么您只需 3 行代码即可完成相同的任务。
$(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
如果您不需要 jQuery,请不要使用它。jQuery 是建立在 JavaScript 之上的。所以如果你已经在纯 JS 中编写了代码,为什么还要在 jQuery 中使用它?
jQuery 等价物在逐行流程方面非常相似,只是它将使用 jQuery.parent()
来选择父元素并使用.addClass()
&.removeClass()
来执行这些操作。
于 2012-07-13T01:59:56.113 回答
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 回答