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 () {},
       })
    }
  • 相关阅读:
    【转】Mybatis常见面试题总结
    【转】深入分析@Transactional的用法
    刷抖音极速版,大家一起来赚钱
    公司喜欢什么样的员工呢?
    边学习新技术边工作的重要性
    聊聊IT行业加班的问题
    软件工程师怎样减轻工作过程中遇到的压力
    如何找兼职工作
    常用的网址导航
    几家主要的配送(跑腿)服务提供商
  • 原文地址:https://www.cnblogs.com/nljy/p/14025296.html
Copyright © 2011-2022 走看看