Javascript Bookmarklet,写入元关键字到新的(浏览器)选项卡

Javascript Bookmarklet that writes Meta keywords into new (Browser) Tab

本文关键字:浏览器 选项 Bookmarklet 关键字 Javascript      更新时间:2023-09-26

所以我设法得到这个工作(脚本提取网站元关键字,并写入DOM)

javascript:(function metaKeywords() { metaCollection = document.getElementsByTagName('meta'); for (i=0;i<metaCollection.length;i++) { nameAttribute = metaCollection[i].name.search(/keywords/);if (nameAttribute!= -1) { document.write(metaCollection[i].content); } } } )();

,现在我只需要弄清楚如何使脚本写入/打开到一个新的浏览选项卡

我能找到的最接近的打开新标签的脚本是:

function openWindow( url ){window.open(url, '_blank');window.focus();}

却不知道如何将两者结合起来。请帮助!

试试这个:

(function metaKeywords() {
    metaCollection = document.getElementsByTagName('meta');
    for (i = 0; i < metaCollection.length; i++) {
        nameAttribute = metaCollection[i].name.search(/keywords/);
        if (nameAttribute != -1) {
            var str = (metaCollection[i].content);
            window.open('javascript:document.write("' + str + '")');
            window.focus();
        }
    }   
})();

或者单行:

javascript:(function metaKeywords() { metaCollection = document.getElementsByTagName('meta'); for (i = 0; i < metaCollection.length; i++) { nameAttribute = metaCollection[i].name.search(/keywords/); if (nameAttribute != -1) { var str = (metaCollection[i].content); window.open('javascript:document.write("' + str + '")'); window.focus();}}})();

打开一个新窗口(确保它没有被阻塞),并设置它将字符串写入内容。Jsfiddle不允许文件。所以我不能给你展示一个演示,但它可以在我的机器(TM)上运行。