慕粉4345620
2017-02-17 19:10
为什么会显示不是JQ对象,不是已经用$变成JQ对象了吗?
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<title></title>
<link rel="stylesheet" href="imooc.css" type="text/css">
<script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
</head>
<body>
<h2>可见性筛选选择器</h2>
<h3>:visible/:hidden</h3>
<div class="left">
<div class="div">
<a>display</a>
<p id="div1" style="display:none;">display</p>
</div>
<div class="div">
<a>width</a>
<a>height</a>
<p id="div2" style="width:0;height:0">width/height</p>
</div>
<div class="div">
<a>visibility</a>
<a>opacity</a>
<p id="div3" style="visibility:hidden;opacity:0">visibility</p>
</div>
</div>
<p id="show"></p>
<script type="text/javascript">
var count = 0;
function show (ele) {
if (ele instanceof jQuery) {
$("#show").html('元素的长度的 = ' + ele.length);
count++;
}
else {
alert(ele+' 不是jQuery对象');
count++;
}
alert(count);
}
</script>
</body>
</html>
<script type="text/javascript">
//查找id = div1的DOM元素,是否可见
show($('#div1:visible') );
</script>
为什么会显示不是JQ对象,不是已经用$变成JQ对象了吗?
之后我在方法里加一个count,最后一次count显示4,大家帮帮忙解释一下为什么?
var count = 0;
function show (ele) {
if (ele instanceof jQuery) {
$("#show").html('元素的长度的 = ' + ele.length);
count++;
}
else {
alert(ele+' 不是jQuery对象');
count++;
}
alert(count);
}
首先代码还是不全只给了第一个SHOW()的 另外其他的如果你没有去修改原本的代码 那肯定会提示你不是JQ对象,你需要先确认到底是不是这第一个SHOW()报的不是JQ对象,我直接复制你这句代码,没有问题不会提示非JQ对象至于总共4次,其实应该不止4次,你通过 show()调用了几次 他就是几
代码请贴全,你这div1鬼知道哪来的
jQuery基础 (一)—样式篇
217509 学习 · 1218 问题
相似问题