jQuery FancyBox搞乱按钮

jQuery FancyBox Messing up Buttons

本文关键字:按钮 FancyBox jQuery      更新时间:2023-09-26

我的网页上有一对jQuery的fancybox。它们是通过ajax被放到页面上的,ajax还会把其他东西放到页面上,比如按钮之类的。但是,由于某种原因,在我打开一个FancyBox窗口后,我的页面上出现了这些样式错误,直到我重新加载它:

Uncaught TypeError: Object [object Object] has no method 'button'

这个按钮工作得很好,直到我点击并打开一个fanybox。这是我的花式框代码和按钮代码。

jQuery('.fancybox-media').fancybox({
    fitToView: false,
    width: '100%',
    height: '100%',
    autoSize: false,
    closeClick: false,
    openEffect: 'none',
    closeEffect: 'none'
});

按钮:

$('.adminbutton').button();

编辑

我已经明确地将其缩小到jQuery UI和FancyBox冲突。打开FancyBox后,我就不能再使用jQuery UI方法了。有人知道解决这个问题的方法吗?

编辑2

我找到了一个临时的解决方案,但它似乎不对。但它确实解决了问题。在FancyBox关闭后,我将jQuery UI与其他一些jQuery重新包含到页面中。

$.getScript('/js/jquery-ui.js');

我找到了一个真正的方法来解决这个错误,因为没有人提供任何真正的帮助。我的JS文件的顺序是不是的问题,这是ajax。出于某种原因,使用ajax的jQuery灯箱插件似乎会破坏大量代码。但是,通过将这些灯箱改为iframe,当然还将我的JS和CSS标题添加到我所包含的页面中,我让它没有任何问题地工作。


简单吗?

当使用jQuery灯箱插件时,当您的页面依赖于其他jQuery(如jQuery UI)时,请使用iframes而不是ajax。