puc*_*chu 3 html iframe jquery events dom
我从当前的项目中找出了一个非常奇怪的错误:
index.html(demo)和iframe.html
做:
1)单击第一个输入并选择任何日期
你会看到 - "iframe中的datepicker发生了变化!"
2)单击第二个输入,写入一些符号并按下页面上的任何可用空间
你会看到 - "iframe里面的"normal_input已经改变了!" +"normal_input在iframe之外改变了!"
内部iframe:
<input id="datepicker" /> <input id="usual_input" />
Run Code Online (Sandbox Code Playgroud)
在index.html绑定到此输入的change事件:
$(this).contents().find("#datepicker").change(... (1)
$(this).contents().find("#usual_input").change(... (2)
Run Code Online (Sandbox Code Playgroud)
在iframe.html上绑定到此输入的更改事件:
$("#datepicker").change(... (3)
$("#usual_input").change(... (4)
Run Code Online (Sandbox Code Playgroud)
但是№1不能在任何浏览器中使用!
jquery ui的datepicker 触发器更改事件100%正确.为什么我们不能在 iframe 之外绑定它?
您可以通过以下方式访问iframe的window元素:
$(this)[0].contentWindow.$("#datepicker")
Run Code Online (Sandbox Code Playgroud)
或者这可能也有效:
this.contentWindow.$("#datepicker");
Run Code Online (Sandbox Code Playgroud)
我希望有所帮助.
| 归档时间: |
|
| 查看次数: |
11287 次 |
| 最近记录: |