函数从$(document).ready外部调用在$(document).ready中定义的函数
Function calls from outside of $(document).ready to the function defined in the $(document).ready
当移动设备方向发生变化时,我想使用$(window).resize来调用一些函数,我将所有代码都写在$(文档)中。准备好了,当我使用Android设备时,这是有效的,但对于iPhone,在检测到第一个方向后,它不会再次调用$(window).resize。当我把(window).resize函数放在$(document).ready之外时,它也适用于iPhone。
在这个$(window).resize函数中,我必须调用在$(document).ready块中定义的方法,那么我该怎么做呢?
由于需要使用来自两个不同事件处理程序的内容,因此应该将该内容从事件处理程序中移出。您不能在任何一个事件处理程序中创建方法,因为您不知道是ready
还是resize
将首先被触发。
例如,您可以创建一个包含以下方法的对象:
var commonMethods = {
data: 42,
someMethod: function() { alert(this.data); }
};
$(document).ready(function(){
commonMethods.someMethod();
});
$(window).resize(function(){
commonMethods.someMethod();
});
在$(document).ready()
块之外定义方法
然后只在整个代码中根据需要调用它们。通过这种方式,您可以从$(document).ready()
和$(window).resize()
块访问它们。
相关文章:
- jQuery加载的async和ready函数不工作
- 如何通过documents.ready函数中的javascript自动按键(ctrl+shift+i)
- 停止对document.ready函数的重定向/刷新
- ready函数在每个页面中触发
- 函数从$(document).ready外部调用在$(document).ready中定义的函数
- 如果没有document.ready(),我怎么能拥有多个javascript函数呢
- 重载像$(document).ready这样的函数是错误的
- $(document)中的多个javascript函数.ready不工作
- JavaScript执行从函数声明开始,而不是从$(document).ready()开始
- 编写没有加载和.ready函数的JavaScript
- 在 $( 文档 ).ready 函数中使用字符串名称调用 javascript 函数
- 调用 Document.ready 外部的 AJAX 函数
- 在CrossRider内部创建的全局变量's的appAPI.ready()函数对页面不可用
- jQuery的事件处理程序运行良好,但应该't,因为它's不在ready()函数中
- 函数在例如$(document).ready()上注册时的通知
- 如何在document.ready(function)时运行隐藏函数和动画
- 超越了在document.ready()中编写简单函数
- Javascript on click事件在函数中不起作用,但在document.ready()中起作用
- 为什么document.ready中的事件处理程序函数有效但无效;取出后不起作用
- 如何调用函数ready()中的函数