2

我在尝试将这两个插件一起工作时遇到问题:本地化(用于翻译 javascript)和 facebox(每个人都知道那个对吗?)

我可以让它们单独工作而没有任何问题,但是当本地化插件被加载并且我点击一个启动 facebox 模态的链接时,ajax 请求开始,facebox 模态窗口显示(带有加载 gif)并直接请求被中止(在萤火虫中,URL 变成红色并且出现“中止”字样)

在 firefox 的错误控制台中,它说:“设置一个只有 getter 的属性”并指向文件:jquery-1.4.min.js,第 126 行(我已经检查过,它与 jquery 1.3.2 给出了相同的错误)

这是我的代码:

$(document).ready(function() {
    $.localise('idioma', {language: AmigoPoints.lang, path: AmigoPoints.baseHref + '/public/js/jquery/'});
    //añadir /format/html/ a los href para que sea AJAX para ZF
    $('a[rel*=facebox]').each(function() {
        this.href += '/format/html';
    })
    // inicializa el plug-in que lanza nuevos links en ventanas modales
    jQuery('a[rel*=facebox]').facebox();
})

由于错误在 jquery 文件中,我不知道在哪里可以尝试解决这个问题:我想错误在我的代码中,但我看不到它。有任何想法吗?

4

1 回答 1

0

好吧,我找到了一个“解决方案”。我没有使用本地化插件,而是直接在我的网页中根据用户的语言偏好加载语言文件。我认为问题出在插件使用 ajax 请求加载语言文件的事实,并且因为它是一个文件(与正常请求相反),jquery 之后无法执行正常的 AJAX 请求。也许有一种方法可以避免这种行为,如果有人知道请告诉我。无论如何,我知道我的 javascript 已经翻译并且 facebox 插件可以正常工作,所以我很高兴。感谢 Adam 和 Pointy 的建议。再见

于 2010-02-27T15:06:14.953 回答