Javascript和jQuery脚本有冲突

时间:2014-02-14 17:40:04

标签: javascript jquery

我似乎正在逐渐向我的网页添加越来越多的Javascript和jQuery,今天它已经转过身来咬我。我的父页面中有以下脚本:

<script type="text/javascript" src="../floatbox/floatbox.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript" src="/js/calendar_min.js"></script>
<script type="text/javascript">
<!--Script makes ToDate jump to FromDate
MouseOver = true;
function date_copy_set() {
    FirstMouseOver = true;
}
function date_copy() {
    if (FirstMouseOver && MouseOver) {
        document.bookboxform.DepartureDate.value=document.bookboxform.ArrivalDate.value; // Main form
        frames.booking.DepartureDate.value=frames.booking.ArrivalDate.value; // Prices tab
        FirstMouseOver = false;
        MouseOver = false;
    }else{ }
}
-->
</script>
<script type="text/javascript">
function shortlist(id) {
    var el = document.getElementById(id);
    if ( el.value == 'checked') {
        window.location.replace("../favouritesdrop.php?hid=" + id +"&page=<?php echo $full_url ?>");
    }
    else {
        window.location.replace("../favouritesadd.php?hid=" + id +"&page=<?php echo $full_url ?>");
    }
}
</script>
<script>
<!-- Tabs script -->
$(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_col.php?hid=<?php echo $hid;?>');
    $("#prices").on('click', 'a.click', function() {
        $(".hiddenstuff").slideToggle(1000),
        $("a.click").toggleClass("faded");
    });
});
</script>

父页面有一个选项卡区域,由上面显示的选项卡脚本控制。

其中一个标签包含文件prices_col.php,该文件由上面脚本的一行加载ajax。

Prices_col.php包含jQuery显示的隐藏区域。 hodden区域包含两个日期框,其日期选择器日历从calendar_min.js开始。父页面中还有另一对日期框也使用日期选择器。

新打开页面时一切正常。日期可以插入主页面或价格选项卡中,日历在两者中都可以正常工作。但是,如果我刷新主页面,则日历将不再适用于价格选项卡(但仍可在主页面中使用)。如果我在刷新主页面之前清除浏览器缓存,一切正常。

我认为这表明某处存在冲突。我怎么能克服这个?

0 个答案:

没有答案