Pergunta

Como posso incluir um Bookmarklet em um documento analisado de Marydown? Existe alguma "tag" para o Markdown que basicamente diz "Não analise isso" ??

Por exemplo, você pode ter algo como:

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

Mas se eu tentar passar pelo JavaScript disso em um link em Markdown como este:

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

Você obtém um link bagunçado, como abaixo.

Hello World!] (JavaScript: function my_bookmarklet () {alert ('hello world');} my_bookmarklet (););)

Existe alguma maneira de contornar isso?

E não, não estou tentando colocar marcadores maliciosos em So ou qualquer coisa, mas quero usar o Markdown para o meu site e gostaria de postar alguns marcadores que escrevi.

EDIT: Eu pensei que tinha a resposta ... mas agora parece que não tenho.

Isso parece funcionar muito bem em armas de destruição em massa e confronto, mas no editor do Markdown.php, não. Alguém tem experiência com markdown.php especificamente?

Foi útil?

Solução

Markdown deixará qualquer HTML em paz, então você pode simplesmente entrar

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

e pegue olá. Editar: não funciona mais em então, o que é uma coisa boa

Você também pode escapar de personagens especiais com uma barra de barra (neste caso, está vendo os ")" s em seu JavaScript como o fim do URL) e a sintaxe do link funcionará:

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

GOSS [Hello] (JavaScript: function my_bookmarklet () {alert ('hello world');} my_bookmarklet (););)

Outras dicas

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

Sei que essa é uma pergunta muito antiga, mas (caso alguém mais encontre seu caminho aqui, como eu), se você incorporar seu script, ele funcionará.

Por exemplo:

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

E, claro, como mencionado acima, ele não funciona aqui, assim.

NOTA: Alguns codificadores de URL substituirão o espaço ("") por um "+", que funciona bem para URLs regulares, mas não o código JS, os espaços devem ser substituídos por "%20"

EDITAR: Isso não parece ser universalmente verdadeiro. Suponho que o analisador específico de Marydown faz a chamada final aqui. Mas isso funciona para mim em mais lugares onde é usado o Markdown.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top