Ade*_*ike 1 firefox jquery object
我有我的页面上的元素的这个切换按钮,当我点击它,我可以看到脚本运行并切换元素,但然后我得到一个新窗口返回JS对象[我猜..].它只是一个空白的窗口,带有我的href网址,它[object Object]
在chrome中说它很好,但ie和firefox这样做.我这样做的方式是
<a href="javascript:jQuery('#thatDude').toggle();">click</a>
<div id="thatDude">blah</div>
Run Code Online (Sandbox Code Playgroud)
更奇怪的部分是我也有这是我的脚本文件
jQuery('.someBtn').live('click', function() {
jQuery('#someForm').toggle();
});
Run Code Online (Sandbox Code Playgroud)
当我点击它 - 它在任何地方工作正常... [是的我知道我应该改变为委托=]]
有谁知道最新情况?即时通讯使用jquery 1.6 [但1.4.4做同样的..]
非常感谢
发生的事情是javascript:,如果返回值不为void,则URI中脚本的返回值将被视为HTML并进行解析.WebKit除外,它没有实现该功能(下面提到一个例外).在您的情况下,我假设jQuery toggle()返回一个未定义的实际值,并将该值视为要解析为HTML的字符串.
您可以在IE和Firefox以及Opera中看到这个简单测试用例中的行为:
<a href="javascript:'<h1>some text</h1>'">Click me</a>
Run Code Online (Sandbox Code Playgroud)
这在WebKit浏览器中完全失败,尽管这在WebKit中可以正常工作,因为它们特殊地破解了一个代码路径:
<iframe src="javascript:'<h1>some text</h1>'"></iframe>
Run Code Online (Sandbox Code Playgroud)
如果要确保脚本的返回值为void,请将其放在void(0)脚本的末尾.
| 归档时间: |
|
| 查看次数: |
790 次 |
| 最近记录: |