我有这个简单的更改功能:
function checkradio() {
$("input.checkbox_check").change(function(){
if ($(this).prop('checked')) {
console.log('checked');
var here = $(this).attr("id");
console.log(here);
$('.' + here).addClass("line_marked");
$('.' + here).removeClass("hide");
$('.' + here).removeClass("inactive");
}
else {
var here = $(this).attr("id");
console.log(here);
$('.' + here).removeClass("line_marked");
$('.' + here).addClass("inactive");
$('.' + here).addClass("hide");
console.log(here);
console.log('not checked');
}
});
}
它检查是否选中了多个复选框,获取选中复选框的 id,然后将几个 css 类添加和删除到具有相应 id 类的折线图(内置于 d3)中。
该操作取决于复选框是否被选中。
这适用于所有浏览器(不是 ie8),除了 Chrome。只要我继续单击复选框,在 chrome 中它就可以正常工作。但是,如果我在窗口打开的情况下等待大约 40 秒,则更改功能将停止工作。然后我必须单击并取消单击复选框,然后它才能再次开始工作。
我在控制台中没有收到错误消息。