jquery实现多图片选中checkbox效果
$(document).ready(function() {
$(".img").click(function() {
if($(".checkbox").prop("checked")) {//先判断该checkbox是否已经被先中。
$(".checkbox").attr("checked","");
$(this).removeClass("check");//".check"这个是图片被激活后的样式。即该被点击的图片有两个状态,一个是正常,另一个是被激活后,写在两个样式里。
} else {
$(".checkbox").attr("checked","checked");
$(this).addClass("check");
}
})
})
JQuery记得用1.6后的版本。
.img 这个是被点击图片的样式
.check 这个是图片被点击过后的样式
.checkbox 这是那个checkbox的样式
JQuery实现多图片选中Checkbox效果非常方便。
1.JQuery可以用来实现多图片选中Checkbox效果。
2.可以通过JQuery中的each()方法来遍历所有的图片,获取到每个图片选中状态的属性值,然后通过设置Checkbox的属性值来实现选中效果。
3.除了JQuery,也可以使用原生JavaScript来实现,并且基于前端框架(如Vue、React等)的组件里面都有实现多图片选中的相关功能,可以根据项目需求进行选择。
jQuery是如何判断HTML页面加载完毕的?它的原理是什么
jQuery判断HTML页面加载完毕用的不是
window.onload
。$(document).ready是在页面加载完毕时执行回调而window.onload是在页面全部加载完成时,包括一些资源比如图片。
所以window.onload比$(document).ready更延后一些。
window.onload自然不必说,是浏览器自身支持的。
但是$(document)
.ready
根据的是document.documentElement
对象去判断的。每次调用document.documentElement.scrollLeft方法如果此方法产生了异常,就说明scrollLeft无法执行,此时页面还未加载完成,所以就用try块包含这条语句,然后catch住,用setTimeout方法,重新执行一遍。直到scrollLeft可以执行时,就说明页面加载完成了,此时再去回调。
如何解决用js判断页面是否加载完成代码实例:示例如下,将下面信息复制保存成.html文件即可浏览到效果...
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>解决js判断页面是否加载完成代码实例</title>
<script type="text/javascript">
var ttd = null;
document.onreadystatechange = subSomething;//当页面加载状态改变的时候执行这个方法.
function subSomething() {
//if(document.readyState == "complete"&&window.parent.frames["框架名"].document.readyState == "complete") //当页面加载状态为完全结束时进入
//myform.submit(); //这是你的操作
if(document.readyState=="complete"){
//alert("当前页面已加载完成!");
box = document.getElementById("box"); //当页面加载完成后获得该元素对象
alert(box.value);
}
}
</script>
</head>
<body>
<div><input type="text" value="加载完成读取该元素值" id="box"/></div>
</body>
</html>

