2009-10-26 7 views
5

、私はこのJavascriptを取得しようとしている:JavaScriptを完全に私はJavascriptを知らないことを開示ブックマークレットとURLエンコーディング

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'; 

この形式の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 

to W3C valdiator。

私はthis encoderでJavaScriptをエンコードしていますが、もちろん、私はJavascriptまたはエンコードの過程で何か間違っています。

誰かがJavascriptのブックマークレットとURLエンコーディングについて、特に一般的なアイディアを持っていますか?ありがとう。

答えて

5

2つのエラーが:

window.locationの:

  1. あなたは、ロケーションオブジェクトの "HREF" メンバーにアクセスする必要があります。

    のjavascript:無効なJavaScriptを持っている= http://foo.comのhref

  2. 場所= 'http://validator.w3.org/check?uri=' +エスケープ(場所)PLUS記号とQUOTE HERE MISSING & DOCTYPE =インライン&のcharset = +自動的&を検出ss = 1 &グループ= 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';})() 
+1

感謝を。私は少なくともいくつかのことが間違っていると思った。私がその作品で終わったのはこれです: 'javascript:(function(){window.location.href = 'http://validator.w3.org/check?uri =' + escape(window.location)+ 私はW3CのAPIに戻って、リクエストURLの形式について何か問題があったかどうかを調べなければなりませんでした(つまり、&doctype = Inline&ss = 1&group = 0&ユーザーエージェント= W3C_Validator/1.654 ';})チェックされるページの文字セットの – markratledge

+0

'window.location.href = http:// foo.com'は必要ありません。 'location = http:// foo.com'はうまく動作します。 –

関連する問題