soo*_*oot 100 html javascript
我继承了一个网站,只是遇到了这种好奇心:
<a href="/delete" onClick="jamoscript:return confirm('Do you really want to do that?');">Delete all</a>
Run Code Online (Sandbox Code Playgroud)
我可以显示包含它的页面并单击链接以获得与我将" jamoscript" 更改为" " 时完全相同的确认对话框javascript.在加载页面或单击链接时,Firebug控制台中不会显示任何诊断信息.嘿嘿?谷歌搜索jamoscript并没有发现任何有趣的东西.
任何人都可以解释这种行为吗?
Poi*_*nty 144
"onclick"属性的字符串值被视为简单的JavaScript代码.JavaScript包含标记语句的规定,因此代码是return带有"jamoscript"标签的语句.换句话说,这个:
jamoscript: return confirm("Do you really want to hurt me?");
Run Code Online (Sandbox Code Playgroud)
是完全合法的JavaScript.标签使用不多,所以他们不熟悉.
"javascript:"前缀很重要的唯一上下文是当需要URL时,就像<a>标记的"href"属性一样.
| 归档时间: |
|
| 查看次数: |
3057 次 |
| 最近记录: |