繁体   English   中英

使用jquery.fancybox将ALT文本显示为fancybox中的标题

[英]Display ALT text as title within fancybox using jquery.fancybox

图片HTML看起来像这样

<img  src="image.png" alt="Alt text" title="Description">

我有特殊的功能来将显示图像标题输出为文件名,在fancybox中不带扩展名和描述。

我的问题是:如果alt不为空,如何从alt属性获取值并输出它而不是filename(title_new)。

jquery.fancybox-1.3.4.pack.js(完整http://pastebin.com/bFmg95AT

_format_title = function(title) {
            var nstr=imgPreloader.src;
            var nres=nstr.split("/");

            var img_name=nres[nres.length-1];
            var img_name_arr=img_name.split(".");
            var title_new= "<b>"+img_name_arr[0]+"</b><br>";

        if (title && title.length) {

                if (currentOpts.titlePosition == 'float') {
                    return '<table id="fancybox-title-float-wrap" cellpadding="0" cellspacing="0"><tr><td id="fancybox-title-float-left"></td><td id="fancybox-title-float-main">' +title_new+  title+ '</td><td id="fancybox-title-float-right"></td></tr></table>';
                }

                return '<div id="fancybox-title-' + currentOpts.titlePosition + '">' + title_new + title + '</div>';

            }

要获得图像的alt属性,您可以使用如下代码,其中“ this”是您正在使用的图像。

var alt = $(this).attr("alt");

该答案的依据是已经声明了“ title_new”并为其指定了默认值

if (typeof $('img').attr('alt') !== typeof undefined && $('img').attr('alt') !== false)
{
    title_new = $('img').attr('alt');
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM