Markdown文档中的Bookmarklet链接

时间:2008-10-14 23:07:46

标签: markdown bookmarklet

如何在Markdown解析文档中包含书签? markdown是否有任何“标记”基本上都是“不解析这个”??

例如,您可以使用以下内容:

<a href="javascript:function my_bookmarklet()
                {alert('Hello World');}
                my_bookmarklet();">Hello</a>

但是如果我尝试将javascript中的javascript传递到markdown中的链接:

[Hello World!](javascript:function my_bookmarklet(){alert('Hello World');}my_bookmarklet();)

你得到一个混乱的链接,如下所示。

[Hello World!](javascript:function my_bookmarklet(){alert('Hello World');} my_bookmarklet();)

到底有没有?

不,我不是试图将恶意书签放在SO或其他任何东西,但我想在我的网站上使用markdown,并希望发布我写的一些书签。

编辑:我以为我有答案......但现在看来我还没有。

这似乎在WMD和摊牌中很有效,但在Markdown.php编辑器中却没有。任何人都有专门的Markdown.php经验吗?

3 个答案:

答案 0 :(得分:6)

Markdown将保留任何HTML,因此您只需输入

即可
<a href="javascript:function my_bookmarklet()
                {alert('Hello World');}
                my_bookmarklet();">Hello</a>

并获得Hello。 编辑:不再适用于SO,这是一件好事

您还可以使用反斜杠转义特殊字符(在这种情况下,它会在您的Javascript中看到“)”作为URL的结尾,并且链接语法将起作用:

[Hello](javascript:function my_bookmarklet(\){alert('Hello World'\);}my_bookmarklet(\);)

给出[Hello](javascript:function my_bookmarklet(){alert('Hello World');} my_bookmarklet();)

答案 1 :(得分:6)

[Hello World!][1]
[1]:javascript:alert('Hello World')

答案 2 :(得分:0)

我知道这是一个非常古老的问题,但是(如果有其他人在这里找到他们的方式,就像我一样),如果你对你的脚本进行url编码,它就会起作用。

例如:

    [Hello World](javascript:%28function%28%29%7Balert%28%22Hello%20World%22%29%7D%29%28%29%3B)

当然,如上所述,它在SO上不起作用。

注意:有些网址编码器会用“+”替换空格(“”),这对常规网址很好,但不能用js代码,空格应该替换为“%20”

编辑:这似乎并非普遍适用。我想特定的降价解析器在这里进行最后的调用。但是这在我使用降价的更多地方适合我。