2013-03-22 2 views
0

Почему следующий декодированный скрипт не работает? Исходный код работает нормально.url decode - не работает

javascript:(function(s){try{s=document.selection.createRange().text}catch(_) {s=document.getSelection()}prompt('State the question and answer below.','Q.' s '')}) 

оригинальный код:

javascript:%28function%28s%29%7Btry%7Bs=document.selection.createRange%28%29.text%7Dcatch%28_%29%7Bs=document.getSelection%28%29%7Dprompt%28%27State the question and answer below.%27,%27Q.%27+s+%27%27%29%7D%29%28%29 

Большое спасибо заранее.

ответ

1

Он расшифровал + знак пробела, попробуйте следующее:

javascript:(function(s){try{s=document.selection.createRange().text}catch(_) {s=document.getSelection()}prompt('State the question and answer below.','Q.'+s+'')}) 

Разница: изменение ' s ' к этому '+s+'

0

не + экранирования в знак и добавить() до конца:

javascript:(function(s){try{s=document.selection.createRange().text}catch(_) {s=document.getSelection()}prompt('State the question and answer below.','Q.' s '')}) 
should be 
javascript:(function(s){try{s=document.selection.createRange().text}catch(_){s=document.getSelection()}prompt('State the question and answer below.','Q.'+s+'')})()