我尝试用jQuery选择某个DOM元素
html
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> </script>
</head>
<body>
<nav id="nav" class="navigator">
<h1>Nav Header</h1>
<ul class="nav-list">
<li class="nav-item"><a >Item #1</a></li>
<li class="nav-item active"><a href="#2">Item #2</a></li>
</ul>
</nav>
</body>
</html>
我想选择第1项 我用了
$('.nav-list').children()
我得到了
TypeError: $(...).children is not a function
这里有什么问题?
答案 0 :(得分:15)
您需要在页面中包含jQuery。
现在大多数浏览器默认在其控制台中包含$()
功能,以便于选择元素,但这只是映射到document.getElementById()
。
返回的值不会有.children()
方法。
此外,如果直接从文件系统加载HTML页面,则需要包含http://
用于CDN脚本URL。否则,您的浏览器将尝试在本地系统上找到.js文件。
答案 1 :(得分:0)
基于$在浏览器控制台中未引用jQuery的事实,我找到了一种方法来更改Google Chrome当前会话中的jQuery。我只是将来自此github页面的JavaScript源粘贴到控制台中:
use jQuery in Chrome javascript console
供以后参考的代码:
var jq = document.createElement('script');
jq.src = "//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js";
document.getElementsByTagName('head')[0].appendChild(jq);
jQuery.noConflict();
那之后我可以
$("html").children()
答案 2 :(得分:0)
就我而言,问题是通过将 '.children()' 替换为 'children' 来解决的 结果我得到了一系列孩子