首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery如何确定一个函数是否在页面加载过程中运行?

问jquery如何确定一个函数是否在页面加载过程中运行?
EN

Stack Overflow用户
提问于 2012-09-26 01:25:53
回答 4查看 92关注 0票数 0

我有一个函数(带有200+代码行)。它可以在页面加载时或在某些单击事件期间运行。现在如何判断一个函数是否在页面加载过程中运行?

下面是一个简单的测试代码。也保存在http://jsfiddle.net/EjcTk/中,谢谢。

代码语言:javascript
复制
<script>
jQuery(document).ready(function(){
    function ABC() {
        //many code here
        if(someelse===undefined){
                           //if by click, do some code.
                           //if by page loading, do not run these code.
            alert('ok');//check if it works.
        }
    }
    $(document).ready(function() {
        var someelse = 1;
                  ABC();                   
    });
    $('#click').click(function() {
        ABC();
    });
});
</script>
<div id="click">test</div>
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-09-26 01:30:53

试试这个:

代码语言:javascript
复制
 function ABC(status) {
    //many codes here
    if(status==='click'){
        //if by click, do some code.
        //if by page loading, do not run these code.
        alert('ok');//check if it works.
    }
}
$(document).ready(function() {
    ABC('default');                   
});
$('#click').click(function() {
    ABC('click');
});

​

票数 1
EN

Stack Overflow用户

发布于 2012-09-26 01:29:18

尝试此http://jsfiddle.net/EjcTk/2/

代码语言:javascript
复制
var someelse = 0;

$(document).ready(function() {
    someelse = 0;

    ABC();
});
$('#click').click(function() {
    someelse = 1;
    ABC();
});
function ABC() {
    if (someelse == 0) {
        alert('onload');
    } else alert('onclick');
}​
票数 1
EN

Stack Overflow用户

发布于 2012-09-26 01:32:06

函数中的Pass boolean argument,以了解它是在加载时调用还是从其他地方调用

代码语言:javascript
复制
jQuery(document).ready(function(){
    function ABC(isOnLoad) {
        //many code here
        if(isOnLoad){
                           //if by click, do some code.
                           //if by page loading, do not run these code.
            alert('ok');//check if it works.
        }
    }
    $(document).ready(function() {

                  ABC(true);                   
    });
    $('#click').click(function() {
        ABC(false);
    });
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12588052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档