我们在使用两个版本的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版权协议,转载请附上原文出处链接和本声明。