2013-10-06 38 views
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。

這是安全防範措施嗎?我做錯了嗎?你真的可以使用地址欄執行代碼嗎?

回答

2

出於安全原因,Firefox 6嚴格限制了通過地址欄可以使用JavaScript進行的操作。

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

如果您打開錯誤控制檯,你會看到一條留言,告訴alert是未定義功能。

Chrome將允許在地址欄中使用JavaScript,但如果您複製粘貼到其中(作爲解決同一安全問題的其他方法),Chrome會將javascript:關閉。

+0

我該如何在書籤欄中做到這一點? –

+0

https://support.mozilla.org/zh-CN/kb/bookmarklets-perform-common-web-page-tasks – ceejayoz