javascript 函数禁用和/或与 fancybox 冲突

标签 javascript jquery

作为一个 javascript/jQuery 菜鸟,我遇到了一个找不到解决方案的问题。

我有一个函数可以从 url 中获取一些参数并替换元素。都好。我在页面上也有 FancyBox 的实例。

它感觉我的 getUrlVars 函数中的某些东西正在杀死 FancyBox。如果我首先在准备好的文档中加载 FancyBox,它只会将较大的图片加载到新的浏览器窗口中,就像常规链接一样。如果我获取 URL 变量并让它们在加载 FancyBox 之前做他们的事情,链接根本不做任何事情。

我已经尝试过单独运行它们并且它们运行良好,直到我尝试同时运行它们。

这是 getUrlVars 脚本...

function getUrlVars()
{

var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for(var i = 0; i < hashes.length; i++)
{
    hash = hashes[i].split('=');
    vars.push(hash[0]);
    vars[hash[0]] = hash[1];
}
return vars;
}

 var salesname = getUrlVars()["agent"];
 var salesname = unescape(salesname);
 var vendor = getUrlVars()["vendor"];
 var vendor = unescape(vendor); 
 var position = getUrlVars()["position"];
 var position = unescape(position);

$('h1:contains("thisiswherethevendorgoes")').html( '<span class = "fade-in one">    <strong>Prepared for ' +  vendor + '</strong></span>');

$("body").html($("body").html().replace(/salesname/g, salesname + ', ' + position));

});

在我设置 FancyBox 之前或之后(我尝试了所有排列)...

$("a#fbs").fancybox({
            'opacity'       : true,
            'overlayShow'   : true,
            'transitionIn'  : 'elastic',
            'easingIn'      : 'easeInCirc',
            'transitionOut' : 'elastic',
            'easingOut'     : 'easeOutCirc',
            'speedIn'       : 500,
            'speedOut'      : 250

        });  

两者都必须在 $(document).ready(function() {

有什么线索吗?非常感谢任何和所有建议。

最佳答案

尝试下面的语法来避免冲突

<script type="text/javascript">
  $.noConflict();
  // Code that uses other library's $ can follow here.
</script>

关于javascript 函数禁用和/或与 fancybox 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8145992/

相关文章:

javascript - 如何减少写 'this' 的次数?

javascript - 在 map 函数中设置特定于元素的 css

javascript - 重写 Asp.net ReportViewer 工具栏分页事件

javascript - 将C#正则表达式转换为Javascript兼容变体

javascript - 可以省略一组中间的 JavaScript 函数参数吗?

javascript - 从 NodeJs 脚本返回退出代码的 Bash 脚本

javascript - 在第一次加载页面时,Android Chrome 上永远不会触发 Touchstart 事件

javascript - Meteor——将点击处理程序绑定(bind)到条件内的按钮

javascript - 为什么我的游戏大小取决于我如何设置 Canvas 大小

jQuery 向导步骤在 ajax 调用完成之前移动