0

アドレスバーを使用してコードを実行できる場所をいくつか見たので、テストするために入力しjavascript:alert("hello");て押しましたが、[ENTER]何も起こりません。

他の誰かがここから書いたコードも試しました。

javascript:(function%20nomify(){var
%20shapes={"w_rect":["cookiemonstercrumbypicturesopen-o.gif","tumblr_mohxt1V6a91svhqpoo1_500.gif","tumblr_md0q05wMJb1rxis0k.gif","tumblr_ml0nmjWpX41snjjivo1_500.gif","cookie4.gif"],
"t_rect":["CookieMonster-Sitting.jpg","487961_10150955894571587_1215263686_n.jpg","534767_10151516100086587_1790492047_n.jpg","patientmonster.png"],
"square":["cookie_monster.jpg","935823_10151502554911587_1547641144_n.jpg","902502_10151355606796587_45192127_o.jpg","cookie-monster.jpg"]},
img_path="http://downloads.cdn.sesame.org/sw/OmNomNomify/";function%20chooseImg(shape){return%20img_path+shapes[shape]
[Math.floor(Math.random()*shapes[shape].length)]}function%20getShape(h,w)
{return%20h===w?"square":h>w?"t_rect":"w_rect"}var%20imgs=document.getElementsByTagName("img"),
img,h,w,shape;for(var%20i=0,len=imgs.length;i<len;i++){img=imgs[i],h=img.height,w=img.width,s=getShape(h,w);img.setAttribute("height",h);
img.setAttribute("width",w);img.src=chooseImg(s)};return%20void%200;})()

私はfirefox 24.0を実行しています。

これはセキュリティ対策ですか?私はそれを間違っていますか?アドレスバーを使って本当にコードを実行できますか?

4

1 に答える 1

2

セキュリティ上の理由から、Firefox 6 では、アドレス バーから JavaScript で実行できることが大幅に制限されました。

https://bugzilla.mozilla.org/show_bug.cgi?id=656433

alertエラー コンソールを開くと、未定義の関数であることを示すメッセージが表示されます。

Chrome では、アドレス バーで JavaScript を使用できますが、javascript:コピーして貼り付けると、JavaScript が削除されます (同じセキュリティ問題に対する別のアプローチとして)。

于 2013-10-06T17:03:49.107 に答える