js中遇到的一个小问题,关于Uncaught ReferenceError:XXX is not defined at HTMLAnchorElement.onclick报错

摘要:
1.具体原因应该与html渲染过程有关。我在这里不详细说明;简而言之,单击后立即执行该功能。发现尚未定义函数。所以报告是错误的;2.解决方案:一种是直接编写函数,这要归功于window.onload函数或JQ的ready方法。然而,第二种方法建议如下:˂!

一、报错代码及原因

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
    <a href="javascript:void(0)" onclick="init()">点我</a>
</body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js"></script>
<script type="text/javascript">
    //var init;
    window.onload=function(){
        var init = function(){
            console.log(0)
        }
    }
</script>
</html>

1、或者吧init函数写在JQ的$(document).ready函数里面也会报标题错误;原因是未找到该函数;

二、为什么会报错?

  1、具体原因应该是和html渲染过程有关。这里就不详细说;总之就是点击的时候立即执行,发现该函数还未定义。所以就报错了;

    2、解决办法:一个是直接写函数,不谢window.onload函数或者JQ的ready方法。但推荐第二个方法,如下:

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
    <a href="javascript:void(0)" onclick="init()">点我</a>
</body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js"></script>
<script type="text/javascript">
    var init;      //先声明一个变量,后面再给其赋值
    window.onload=function(){
        var init = function(){
            console.log(0)
        }
    }
</script>
</html>

免责声明:文章转载自《js中遇到的一个小问题,关于Uncaught ReferenceError:XXX is not defined at HTMLAnchorElement.onclick报错》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇python实现注册登录小程序Android Debug Bridge命令介绍[转]下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

js 二分查找法之每日一更

<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html"/> <meta name="keywords" content="二分查找算法" />...

JS读取粘贴板内容

1.1 监听onpaste事件 1.1.1 定义和用法 npaste 事件在用户向元素中粘贴文本时触发。 注意:虽然使用的 HTML 元素都支持 onpaste 事件,但实际上并非支持所有元素,例如 <p> 元素, 除非设置了 contenteditable 为 "true" (查看下文的更多实例)。 提示:onpaste 事件通常用于 typ...

中文前端UI框架Kit(十三)使用RequireJs托管你的类库和js代码

号外:kitjs官方讨论QQ群建立了,QQ群号88093625,欢迎大家加入,讨论前端相关话题 kit内置支持requireJs托管,可以使用requireJs加载和管理KitJs框架内的所有组件和类库 最近园子里有很多讨论requireJs(http://requirejs.org/)的兄弟,requireJs托管js代码的好处有 1.通过闭包提供了一个...

项目中一次排序规则的改动,注意到js中map的遍历的顺序

背景:项目需要对前端页面上某个插件的下拉选择项进行排序,需要按照配置的顺序显示。 首先调查后台,发现sql语句中已经添加order by。之后发现查询结果遍历后封装进HashMap,这里改为LinkHashMap。再之后向前端返回json数据,使用的是net.sf.json.JSONObject,该方法对map进行序列化时是无序的,改用Gson进行序列化。...

js 预览 excel,js-xlsx的使用

js-xlsx 介绍 由SheetJS出品的js-xlsx是一款非常方便的只需要纯JS即可读取和导出excel的工具库,功能强大,支持格式众多,支持xls、xlsx、ods(一种OpenOffice专有表格文件格式)等十几种格式。本文全部都是以xlsx格式为例。 官方github:https://github.com/SheetJS/js-xlsx 本...

js 文件下载

工程WebApi: 点击按钮执行的handler 1 exportClick() { 2 var 3 profile = { 4 content: this.state.profile, 5 type: MappingTypeForSe...