zoukankan      html  css  js  c++  java
  • onclick 定义的方法 在$(function(){})或window.onload=function(){}中无效

    $(function(){ }) 或 window.onload=function(){}  表示页面加载完成后执行,html文档从至上而下解析的时候 ; 解析到onclick="showAlert()"方法的时候写在$(function(){ }) 或 window.onload=function(){} 里的方法还没有声明,会报错。

    window.onload 和 $(function(){})的 区别:

    window.onload是js原生,$(function(){})需要引用jquery库才生效;
    多个window.onload=function(){}会被覆盖,只执行最后一个;

    多个$(function(){})都执行

    $(function () {
        console.log("ready执行");
    });
    
    $(function() {
        console.log("ready1执行");
    });
    
    window.onload = function () {
        console.log('load执行');
    };
    window.onload = function () {
        console.log('load1执行');
    }
    
    //结果
    
    ready执行
    ready1执行
    load1执行

    解决:

      如果将showAlert()方法写道$(function(){ }) 或 window.onload=function(){}  外,html文档从至上而下解析会遇到function showAlert(){}的方法,就会在内存中开辟一个新的空间来对函数进行存储,方便以后进行调用。所以该方法起作用。

      当然如果在$(function(){ }) 或 window.onload=function(){} 内有你需要的变量,你的方法写到外面就会获取不到。可以

      

    //在内部声明全局方法 
    window.untreatedMsg = untreatedMsg;
    
    function untreatedMsg(bigareaid, dt) {
       $.ajax({
           url: ``,
           type: "GET",
           success: function (res) { },
           error: function () {},
       })
    }
  • 相关阅读:
    程序员优化程序流程
    iOS开发优化的25个方案
    彻底解决_OBJC_CLASS_$_某文件名", referenced from:问题转
    svn服务器搭建与配置
    mac 显示隐藏文件夹
    HDU 2276 Kiki & Little Kiki 2 矩阵构造
    HDU 3306 Another kind of Fibonacci ---构造矩阵***
    HDU 1575 Tr A----矩阵相乘题。
    矩阵的模板----
    HDU 1757 矩阵求第n的递推式
  • 原文地址:https://www.cnblogs.com/nljy/p/14025296.html
Copyright © 2011-2022 走看看