JavaScript小书签和URL编码

mar*_*dge 5 javascript url encoding bookmarklet

完全透露我不知道Javascript,我试图得到这个Javascript:

javascript:location = 'http://validator.w3.org/check?uri=' +escape(location)&doctype=Inline&charset=detect+automatically&ss=1&group=0&user-agent=W3C_Validator/1.654';
Run Code Online (Sandbox Code Playgroud)

作为Bookmarklet工作,以发送此格式的URL:

http://validator.w3.org/check?uri=http://www.wordpress.org&charset=%28detect+automatically%29&doctype=Inline&ss=1&group=0&user-agent=W3C_Validator%2F1.654
Run Code Online (Sandbox Code Playgroud)

到W3C的指挥官.

我是用这个编码器对Javascript进行URL编码的,但当然,我做错了,无论是在我的Javascript中还是在编码过程中.

任何人都有一些关于Javascript bookmarklet和URL编码的特别或一般的想法?谢谢.

Jak*_*raw 5

两个错误:

  1. 您需要访问位置对象的"href"成员:

    window.location的.href = http://foo.com

  2. 您的JavaScript无效:

    javascript:location =' http : //validator.w3.org/check?uri =' + escape(location)PLUS SIGN AND QUOTE MISSING HERE&doctype = inline&charset = detect + automatic&ss = 1&group = 0&user-agent = W3C_Validator/1.654';

我建议使用这个:

javascript:(function(){window.location.href='http://validator.w3.org/check?uri='+escape(window.location.href)+'&doctype=Inline&charset=detect+automatically&ss=1&group=0&user-agent=W3C_Validator/1.654';})()
Run Code Online (Sandbox Code Playgroud)