0

在我的 sharepoint 网站上的所有页面中,我有1 个页面需要使用...

jQuery 工具和 videolightbox 和 jQuery 1.3.2(一个包!)。

该网站的其余部分使用 jQuery 1.8.3

但是在同一页面上,页眉、菜单和页脚需要使用 jQuery 1.8.3 才能正常运行。这是我的冲突发生的地方,也是我头疼的地方。

在这个单一/冲突页面上,如何防止 jQuery 1.3.2 与我在 custom-scripts-for-the-whole-site.js 文件中加载的任何其他 jQuery 1.8.3 方法和函数发生冲突?

下面是如何在我的主模板底部设置我的代码的演示......

   <!--THESE 2 FILES WORK GREAT FOR THE ENTIRE SITE-->
   <script src=".../jquery-1.8.3.min.js" type="text/javascript"></script>
   <script type="text/javascript" src=".../custom-scripts-for-the-whole-site.js"></script>

    <script type="text/javascript">
    /*THIS SECTION LOADS JQUERY 1.3.2 IN ORDER FOR JQUERY TOOLS AND VIDEOLIGHTBOX TO WORK
     JQUERY TOOLS BUNDLES 1.3.2 WITHIN IT'S OWN FILE! - FYI
     I SET UP A CONDITIONAL STATEMENT TO LOAD THIS CODE ONLY ON THIS SPECIFIC PAGE.
     */
    var mLof = document.getElementById("donate-landing-page");
    if(mLof !=null) {
    document.write(unescape("%3Cscript src='/jquery.tools.min.live.js' type='text/javascript'%3E%3C/script%3E"));
    document.write(unescape("%3Cscript src='/swfobject.js' type='text/javascript'%3E%3C/script%3E"));
    document.write(unescape("%3Cscript src='/videolightbox.js' type='text/javascript'%3E%3C/script%3E"));
    document.write(unescape("%3Cscript src='/jquery.easing.1.3.js' type='text/javascript'%3E%3C/script%3E"));
    }
    //*/
    </script>

感谢您的任何建议!

4

1 回答 1

0

你需要$.noConflict API

<script type="text/javascript">
/*THIS SECTION LOADS JQUERY 1.3.2 IN ORDER FOR JQUERY TOOLS AND VIDEOLIGHTBOX TO WORK
 JQUERY TOOLS BUNDLES 1.3.2 WITHIN IT'S OWN FILE! - FYI
 */
var mLof = document.getElementById("donate-landing-page");
if(mLof !=null) {
document.write(unescape("%3Cscript src='/jquery.tools.min.live.js' type='text/javascript'%3E%3C/script%3E"));
document.write(unescape("%3Cscript src='/swfobject.js' type='text/javascript'%3E%3C/script%3E"));
document.write(unescape("%3Cscript src='/videolightbox.js' type='text/javascript'%3E%3C/script%3E"));
document.write(unescape("%3Cscript src='/jquery.easing.1.3.js' type='text/javascript'%3E%3C/script%3E"));
jq132 = $.noConflict(true);
}
//*/
</script>
于 2013-04-18T21:24:00.453 回答