对于不使用jQuery的网站,有没有一种简单的方法将jQuery包含在Chrome JavaScript控制台中?例如,在一个网站上,我想获取表中的行数。我知道jQuery很容易做到这一点。

$('element').length;

该网站不使用jQuery。我可以从命令行添加它吗?


当前回答

如果您想经常从控制台使用jQuery,那么可以很容易地编写用户脚本。首先,如果您使用的是Chrome,请安装Tampermonkey;如果您使用Firefox,请安装Greasemonkey。使用如下的use函数编写一个简单的用户脚本:

var scripts = [];

function use(libname) {
    var src;
    if (scripts.indexOf(libname) == -1) {
        switch (libname.toLowerCase()) {
            case "jquery":
                src = "//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js";
                break;
            case "angularjs":
                src = "//ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js";
                break;
        }
    } else {
        console.log("Library already in use.");
        return;
    }
    if (src) {
        scripts.append(libname);
        var script = document.createElement("script");
        script.src = src;
        document.body.appendChild(scr);
    } else {
        console.log("Invalid Library.");
        return;
    }
}

其他回答

这个答案基于@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中有效,也没有在冲突环境中测试。

根据这个答案:

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)})

另一个选项是将jQuery内容保存在一个代码段(chrome)中,然后在您想要的任何站点上运行(右键单击+运行或CTRL+Enter)。如果您想按需运行,则不一定是jQuery任何javascript。(例如:SharePoint JSOM..只需将所有JSOM文件保存为片段并按所需顺序运行)

我是个叛逆者。

解决方案:不要使用jQuery。jQuery是一个抽象浏览器间DOM不一致性的库。因为您在自己的控制台中,所以不需要这种抽象。

例如:

$$('element').length

($$是控制台中document.querySelectorAll的别名。)

对于任何其他例子:我确信我能找到任何东西。特别是如果你使用的是现代浏览器(Chrome、FF、Safari、Opera)。

此外,了解DOM的工作原理不会伤害任何人,它只会提高您的jQuery水平(是的,了解更多有关javascript的知识会让您更擅长jQuery)。

现代浏览器(在Chrome、Firefox、Safari上测试)使用美元符号$实现了一些助手函数,这些函数与jQuery非常相似(如果网站没有使用window.$定义某些东西)。

这些实用程序对于选择DOM中的元素并修改它们非常有用。

文档:Chrome、Firefox