对于不使用jQuery的网站,有没有一种简单的方法将jQuery包含在Chrome JavaScript控制台中?例如,在一个网站上,我想获取表中的行数。我知道jQuery很容易做到这一点。
$('element').length;
该网站不使用jQuery。我可以从命令行添加它吗?
对于不使用jQuery的网站,有没有一种简单的方法将jQuery包含在Chrome JavaScript控制台中?例如,在一个网站上,我想获取表中的行数。我知道jQuery很容易做到这一点。
$('element').length;
该网站不使用jQuery。我可以从命令行添加它吗?
当前回答
以下是替代代码:
javascript:(function() {var url = '//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js'; var n=document.createElement('script');n.setAttribute('language','JavaScript');n.setAttribute('src',url+'?rand='+new Date().getTime());document.body.appendChild(n);})();
它可以直接在Console中粘贴,也可以创建一个新的书签页面(在Chrome中,右键单击书签栏,添加页面…)并将此代码粘贴为URL。
要测试这是否有效,请参见下文。
之前:
$()
Uncaught TypeError: $ is not a function(…)
之后:
$()
[]
其他回答
添加到@jondavidjohn的答案中,我们还可以将其设置为书签,URL作为javascript代码。
名称:包含Jquery
Url:
javascript:var jq = document.createElement('script');jq.src = "//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js";document.getElementsByTagName('head')[0].appendChild(jq); setTimeout(function() {jQuery.noConflict(); console.log('jQuery loaded'); }, 1000);void(0);
然后将其添加到Chrome或Firefox的工具栏中,这样我们就不用一次又一次地粘贴脚本,只需单击书签即可。
使用jQueryify小册子:
https://web.archive.org/web/20190502132317/http://marklets.com/jQuerify.aspx
这将使它成为一个可点击的书签,而不是复制粘贴其他答案中的代码。
这个答案基于@genesis答案,起初我尝试了书签版本@jondavidjohn,但它不起作用,所以我将其更改为这个(将其添加到书签中):
javascript:(function(){var s = document.createElement('script');s.src = "//code.jquery.com/jquery-2.2.4.min.js";document.getElementsByTagName('head')[0].appendChild(s);console.log('jquery loaded')}());
警告语,没有在chrome中测试,但在firefox中有效,也没有在冲突环境中测试。
如果您希望为用户脚本执行此操作,我会这样写:http://userscripts.org/scripts/show/123588
它将允许您包含jQuery,以及UI和任何您想要的插件。我在一个有1.5.1但没有UI的网站上使用它;这个脚本给了我1.7.1,加上UI,在Chrome或FF中没有冲突。我自己没有测试过Opera,但其他人告诉我它也适用于他们,所以这应该是一个完整的跨浏览器用户脚本解决方案,如果你需要这样做的话。
根据这个答案:
fetch('https://code.jquery.com/jquery-latest.min.js').then(r => r.text()).then(r => eval(r))
出于某种原因,我必须执行两次以获得新的“$”(我也必须使用其他方法),但它有效。
如果你的浏览器不是那么现代,这是相当的:
fetch('http://code.jquery.com/jquery-latest.min.js').then(function(r){return r.text()}).then(function(r){eval(r)})