如何方便地分发我的小书签?

问题描述 投票:0回答:1

我刚刚写了我的第一个书签。这是简单的 js 代码,它获取当前页面的 URL 并执行 POST 请求将其提交到另一个页面。

问题是我需要在不允许 HTML 的博客平台(quora.com)上分享此内容。因此,我需要在另一个网站上发布指向我的书签的链接,并提供指向该书签的链接。我希望能够提供一个链接,人们可以将其拖动到书签栏。

这是书签代码。

javascript:(function() {
    var msg = window.jQuery.ajax({url:'https://www.quora.com/api/logged_in_user',async:false,type:'GET'});
    var username = undefined;
    if (msg) {
        username = window.jQuery.parseJSON(msg.responseText.replace('while(1);',''));
    window.jQuery.post('https://my-website',
        {'answer_1':window.location.href,'submitter':username.name});
    alert (username.name + ' nominates  ' + window.location.href);
}})();
javascript bookmarklet quora
1个回答
0
投票

首先,您需要转义书签代码中的特殊字符

\
`
$
并将其存储在模板字符串中。然后,您可以创建一个锚标记并将其
href
属性设置为等于您的模板字符串。这使用户可以轻松地将链接拖到书签栏中。随后,他们只需单击书签即可执行您的代码。”

var bookmarkletString = `javascript:(function() {
    var msg = window.jQuery.ajax({url:'https://www.quora.com/api/logged_in_user',async:false,type:'GET'});
    var username = undefined;
    if (msg) {
        username = window.jQuery.parseJSON(msg.responseText.replace('while(1);',''));
    window.jQuery.post('https://my-website',
        {'answer_1':window.location.href,'submitter':username.name});
    alert (username.name + ' nominates  ' + window.location.href);
}})();`;
document.querySelector("#bookmarklet").href = bookmarkletString;
<h1>Drag This Link into your Bookmarks Toolbar</h1>

<a id="bookmarklet">Your Bookmarklet Name</a>

© www.soinside.com 2019 - 2024. All rights reserved.