Javascript Jquery-脚本冲突

Javascript Jquery-脚本冲突,javascript,jquery,html,conflict,Javascript,Jquery,Html,Conflict,在我的父页面中,我使用jquery操作一个选项卡区域,并将内容(prices.php)加载到其中一个选项卡中。这是该页面上的脚本: $(document).ready(function() { $("#tabcontent > div").hide(); // Initially hide all content $("#tabs li:first").attr("id","current"); // Activate first tab $("#tabconten

在我的父页面中,我使用jquery操作一个选项卡区域,并将内容(prices.php)加载到其中一个选项卡中。这是该页面上的脚本:

$(document).ready(function() {
    $("#tabcontent > div").hide(); // Initially hide all content
    $("#tabs li:first").attr("id","current"); // Activate first tab
    $("#tabcontent div:first").fadeIn(); // Show first tab content

    $('#tabs a').click(function(e) {
        e.preventDefault();
        if ($(this).closest("li").attr("id") == "current"){ //detection for current tab
         return       
        }
        else{             
        $("#tabcontent > div").hide(); //Hide all content
        $("#tabs li").attr("id",""); //Reset id's
        $(this).parent().attr("id","current"); // Activate this
        $('#' + $(this).attr('name')).fadeIn(); // Show content for current tab
        }
    });
$('#prices').load('../prices_test.php?hid=<?php echo $hid;?>');
});
还有

$("a.click<?php echo $i ?>")

我不得不删除“$I”位,因此只要单击其中一个实例,脚本就会对所有实例执行操作。我不想让它这样,但我会把它保存到Mk2版本中。感谢所有回复者。

如果将两个或更多jQuery导入到您的页面,则每个实例都可以覆盖以前加载的名称空间。根据内容的加载方式以及加载其他版本的时间,较新的文件可能会覆盖事件绑定到的$namespace。签出函数。这家伙可以做一些事情,他可以将jQuery的实例完全从全局上下文中移除,并将其推送到本地var

var jQ = jQuery.noConflict(true);
jQ('.someClass').click(function(){
   // do stuff
});
或者,它可以简单地删除对
$
快捷方式的依赖。这意味着我们需要使用
jQuery
而不是
$
来引用该版本的jQuery

$.noConflict();
jQuery('.someSelector').click(function(){
   // more stuff doing
});

尝试将一个类添加到
#tabs a
元素中,并将该类放入选择器。不确定我是否正确理解您的意思。我在所有的中添加了一个类,然后更改了脚本:$('#tabs a.tabby')。单击(函数(e){这似乎可以解决问题。现在这两个选择器不应该冲突,因为它们选择了不同的链接。你是在使用AJAX加载内容吗?然后我用这个$('#prices')加载它。加载('../prices.php?hid='));在document.load之后。
$("#prices").on('click', 'a.click', function() {
var jQ = jQuery.noConflict(true);
jQ('.someClass').click(function(){
   // do stuff
});
$.noConflict();
jQuery('.someSelector').click(function(){
   // more stuff doing
});