jQuery冲突问题解决

我们在使用两个版本的jq的时候,经常发生冲突

解决这样的情况首先有两点:

第一,两个jq的文件名字不能相同,比如引入的都是jquery.mini.js,必须要进行区分,比如jq.mini345.js等等
第二,引入的jq先后顺序一定要清楚,有的作为HTML开头就引用,有的作为结尾。

分清楚以上两点之后,我们就可以针对冲突来解决了

在你要自定义的js中替换$符号为以下代码的字符
首先:

<script src="{$_G['style'][tpldir]}/common/src/vendor/jquery/jquery.min341.js">
		<script>var jq341=jQuery.noConflict(true);</script>

最后你写js文件中是这个样子的:

jq341(document).ready(function () {
	"use strict";
	
	
	
	
	
//
jq341("body").on("contextmenu",function(e){
        return false;
    });
    jq341(document).keydown(function(e){
         if (e.ctrlKey && (e.keyCode === 67 || e.keyCode === 86 || e.keyCode === 85 || e.keyCode === 117)){
           return false;
         }
         if(e.which === 123){
             return false;
         }
         if(e.metaKey){
             return false;
         }
         //document.onkeydown = function(e) {
         // "I" key
         if (e.ctrlKey && e.shiftKey && e.keyCode == 73) {
             return false;
         }
         // "J" key
         if (e.ctrlKey && e.shiftKey && e.keyCode == 74) {
             return false;
         }
         // "S" key + macOS
         if (e.keyCode == 83 && (navigator.platform.match("Mac") ? e.metaKey : e.ctrlKey)) {
             return false;
         }
         if (e.keyCode == 224 && (navigator.platform.match("Mac") ? e.metaKey : e.ctrlKey)) {
             return false;
         }
         // "U" key
         if (e.ctrlKey && e.keyCode == 85) {
            return false;
         }
         // "F12" key
         if (event.keyCode == 123) {
            return false;
         }
    });

现在已经完美解决冲突问题了


版权声明:本文为xxc_00126原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。