使用jquery.fancybox

时间:2015-06-10 11:28:52

标签: jquery fancybox nextgen-gallery

图片HTML看起来像这样

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

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

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

jquery.fancybox-1.3.4.pack.js(full 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>';

            }

2 个答案:

答案 0 :(得分:0)

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

<input type="hidden" name="id" value="<?= $this->product->getId() ?>" />
<input name="quantity" value="1" readonly/>

<script type="text/javascript">
    $(document).ready(function () {
        $('input[name="quantity"]').spinner({
            min: 1,
            max: <?= $this->product->getQuantity() ?>,
        }).keydown(function (e) {
            e.preventDefault();
        });
    });
</script>

答案 1 :(得分:0)

这个答案的基础是&#39; title_new&#39;已被声明并给出默认值

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