0

我需要修改一个我目前用来显示图像的 javascript 文件(它是一个标准的灯箱 JS)。这是我需要修改的脚本部分:

settings : function() {
    var t = this, s = shutterSettings;

    t.imageCount = s.imageCount || 0;
    t.msgLoading = s.msgLoading || 'L O A D I N G';
    t.msgClose = s.msgClose || 'Click to Close';
},

基本上我需要用加载条 gif 替换脚本中的“加载”一词。有人可以指出我如何做到这一点的正确方向(链接到教程、手册等)吗?我试图用<img>or<div>标记替换这个词,但没有奏效。

4

2 回答 2

1

http://lokeshdhakar.com/projects/lightbox/看看第三点是否有帮助......

如果您想向用户显示“正在加载”图形,例如上面示例中的动画进度条,请在 lightbox.js 文件的顶部指定其位置:

var loadingImage = 'loading.gif';

于 2012-10-31T15:19:09.977 回答
1

您需要在灯箱插件中进行此替换而不是在其设置中。

msgLoading很可能被认为是作为字符串给出的,并且接收到的字符串被设置为 a或元素div的文本。pspan

如果你发布一个指向 lightbox 插件的 js 文件的链接或者告诉我们插件的名称或者你下载它的站点,也许我可以给你一个更准确的答案。事实上,它是一个标准的灯箱 JS 并不完全有帮助

[编辑]因此,您似乎正在为 NextGEN Gallery 使用 Shutter Reloaded 如果您查看插件的 js 文件(此处为您的情况),您将看到innerHTML已设置,因此使用 animg应该可以。

loading : function() {
        var t = this, S, WB, W;
        if ( (W = t.I('shWrap')) && W.style.visibility == 'visible' ) return;
        if ( ! (S = t.I('shShutter')) ) return;
        if ( t.I('shWaitBar') ) return;
        WB = document.createElement('div');
        WB.setAttribute('id','shWaitBar');
        WB.style.top = t.Top + 'px';
        WB.style.marginTop =(t.pgHeight/2) + 'px'
        WB.innerHTML = t.msgLoading;
        S.appendChild(WB);
    },

尝试使用以下设置:

var shutterSettings = {"msgLoading":"<img src=\"http://redflexmedia.com/loading.gif\">","msgClose":"Click to Close","imageCount":"1"};

[编辑]上面的代码必须放在 HTML 文件中的head部分,而不是插件中。

这意味着您必须更换这部分

<script type='text/javascript'>
/* <![CDATA[ */
var shutterSettings = {"msgLoading":"<img src=\"http://redflexmedia.com/loading.gif\">","msgClose":"Click to Close","imageCount":"1"};
/* ]]> */
</script>

<script type='text/javascript'>
/* <![CDATA[ */
var shutterSettings = {"msgLoading":"L O A D I N G","msgClose":"Click to Close","imageCount":"1"};
/* ]]> */
</script>
于 2012-10-31T15:24:45.373 回答