$(...).each 不是一个函数
2015-08-10
78530
我尝试使用 Web 控制台获取页面上所有 h2 标签内的文本。
我发现的所有方法都说使用 each,我已尝试过
var anArray = [];
$('h2').each( function(i,e) {
anArray.push($(e).innerHTML);
});
但是它返回
TypeError: $(...).each
不是函数。
我也尝试过使用
$.each('h2', function(i,e) {
anArray.push($(e).innerHTML);
});
但是同样,我得到的只是
TypeError: $.each
不是函数?
3个回答
1) 粘贴:
var script = document.createElement('script');
script.src = "https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js";
document.getElementsByTagName('head')[0].appendChild(script);
在您的控制台上(包括 jQuery)
2) 等待 1 秒并粘贴:
var h2Arr = [];
$('h2').each( function() {
h2Arr.push($(this).html());
});
现在,该页面 h2 标签的所有内容都应存储到 h2Arr 中
Aramil Rey
2015-08-10
如果你编写的代码没有 $() 例如
var1.each(function(){}) //its wrong//each function is not defined error
$(var1).each(function(){}) //its right
Ambala Chandrashekar
2017-09-18
Note: For Chrome, do not expect $ is always
jQuery
.
您可以将
$
放入控制台以检查它是否返回默认的
ƒ $(selector, [startNode]) { [Command Line API] },如果是,则表示未为
jQuery
定义 $。
幸运的是,我们有以下方法可以尝试:
-
解决使用
$
的冲突,让它成为jQuery
而没有任何歧义
首先,您可以将此代码片段
var jq = document.createElement('script');
jq.src = "https://code.jquery.com/jquery-3.3.1.min.js"; /* Include any online jquery library you need */
document.getElementsByTagName('head')[0].appendChild(jq);
放入控制台,
然后将
$.noConflict
放入控制台,如果它不返回
undefined
,而是返回
ƒ (t){return e.$===w&&(e.$=Kt),t&&e.jQuery===w&&(e.jQuery=Jt),w>
,这意味着现在
JQuery
中没有定义
$
。
接下来您可以继续输入您的区域代码,然后您会发现它现在可以正常工作了。
参考 : https://blog.wplauncher.com/run-jquery-in-chrome-console/
-
在 Chrome 中使用
.js
文件,然后调试 JavaScript 文件。
-
此外,对于某些特定版本的 Chrome,UI 中有一个选项可以设置
页面上下文
( 可能在最新版本中删除了 此功能!)
。
Bravo Yeung
2019-04-26