前端 js 脚本执行不了,jquery库跟$(id).onclick 冲突

问题描述

此问题把我弄得欲哭无泪,浪费了我一整天的时间,前端太蛋疼,特备是js,我连报错的地方都不知道在哪里,才疏学浅,只能一个alert 输出出来,看那一段代码输出不出来,好吧,先说一下问题:
(1) js代码运行不出来
(2) jquery库跟$(id).onclick 冲突

问题解决

关于第一个问题,出错的方式有很多种,
1. 首先判断你的JS路径是不是对的
2. 判断你的js脚本中的函数中是不是有哪一步代码有问题,可能是某一步代码有问题,比如你利用document.getElementById(id) 这个id不存在等等之类的,
3. jquery库跟$(id).onclick 冲突,这个问题很不好弄,因为 你都不知道怎么就错了,关于这个问题我就重点介绍一下

jquery库跟$(id).onclick 冲突

这个问题首先是因为你的代码这样写,

    var $ = function(id){
        return "string" == typeof id ? document.getElementById(id) : id;
    }

定义一个$函数,然后针对某些按钮点击操作有如下 自己定义的 代码:

 $('addNum').onclick = function(e){
        ...
    };

如果这个时候,你的页面也引用了jquery库,比如如下:

    <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.js"></script>

很高兴的告诉你,此时冲突了,因为jquery库中也有利用$来获取对象获取函数,此刻会有冲突,要不就是jquery代码不行,要不就是你写的js会出现问题,所以正常就将你自己定义的函数改一下,加一个英文字母,如下:

    var $id = function(id){
        return "string" == typeof id ? document.getElementById(id) : id;
    }

此刻问题解决了,

总结

js还要继续学习。

参考博客

js中函数function ( i d ) j q u e r y 冲突的解决方法总结
jQuery”$”美元符号冲突的解决办法

猜你喜欢

转载自blog.csdn.net/randompeople/article/details/79598272