私はjavascriptについてよく知らないが(JAVAのみ)、私は(Googleブックマークから)見つかったいくつかのjavascriptコードをハッキングしないようにしている。Javascript:文字列中のスラッシュ(/)のインデックスを探す
ここに私の場合です:URLリンクの代わりにjavascriptを含むブックマークをブラウザに作成しています。ブックマークを押すと、同じURLの新しいウィンドウが開きますが、いくつかの追加情報が表示されます。 だから、https://www.abcde.com/KnowYourABCにイムを言うと私はブックマークを押すと、それがリンクしてウィンドウを開く必要があります。https://www.abcde.com.DoYou/KnowYourABC - 私は次のスクリプトを持っている 『/』
のように「.DoYouは」ちょうど第3回の前に挿入されています:
javascript:(function(){
var a=window, b=document, c=encodeURIComponent,
url = b.location,
d = a.open(url, "bkmk_popup", "left="+
((a.screenX||a.screenLeft)+50)+",top="+
((a.screenY||a.screenTop)+50)+
",height=600px, width=1200px, resizable=1, alwaysRaised=1");
a.setTimeout(function(){d.focus()},300)
})();
これまでのところ、同じURLのウィンドウが開きます。しかし、私は3番目の "/"でURLを分割するように見えることはできません。
URLを分割し、「.DoYou」を挿入するために、バックスラッシュのインデックスを取得するためにi = url.indexOf("//",9)
を試してみましたが、その後ウィンドウが開きません。私を助けてください!あなたは/
(スラッシュ)をエスケープする必要はありません
SOLUTION
javascript:(function(){
var a=window;
b=document;
c=encodeURIComponent;
url = b.location;
var parts = window.location.href.split("/");
parts[2] += ".DoYou";
var newurl = parts.join("/");
a.open(newurl, "bkmk_popup","left="+((a.screenX||a.screenLeft)+50)+",top="+((a.screenY||a.screenTop)+50)+",height=600px,width=1200px,resizable=1,alwaysRaised=1"); a.setTimeout(function(){d.focus()},300);
})();
未修飾のjavascriptコードを投稿したい場合があります。 –
参考のため、 '/'は通常のスラッシュです。 '\\'はバックスラッシュです。 – cHao
'/'は正規表現でエスケープする必要があり、 '' \/''になります。文字列では '/'で十分です(何にも衝突しません)。 – pimvdb