如何将html添加到blueimp gallery title元素

问题描述 投票:1回答:1

我正在使用blueimp画廊旋转木马,并希望设置标题元素的样式,以便某些单词是粗体或不同的颜色,甚至链接。我已经设法找到一个代码片段,它允许我将图像本身转换为链接,但这并不是我所追求的。

这可能吗?

JS:

document.getElementById('links').onclick = function (event) {
    event = event || window.event;
    var target = event.target || event.srcElement,
        link = target.src ? target.parentNode : target,
        options = {index: link, event: event},
        links = this.getElementsByTagName('a');
    blueimp.Gallery(links, options);
};
$(document).ready(function() {

    //BlueImp Carousel
    document.getElementById('links').onclick = function(event) {
        event = event || window.event;
        var target = event.target || event.srcElement,
            link = target.src ? target.parentNode : target,
            options = {
                index: link,
                event: event
            },
            links = this.getElementsByTagName('a');
        blueimp.Gallery(links, options);
    };

    var title;
    blueimp.Gallery(
        document.getElementById('links').getElementsByTagName('a'), {
            container: '#blueimp-gallery-carousel',
            carousel: true,
            thumbnailIndicators: false,
            transitionSpeed: 400,
            slideshowInterval: 5000,
            clearSlides: true,
            titleElement: 'h3',
            urlProperty: 'link',
            onslidecomplete: function(index, slide) {
                title = $(slide).find("img").attr("title");
                var href = this.list[index].getAttribute('href');
                slide.innerHTML = "<a href='" + href + "' title='" + title + "'>" + slide.innerHTML + "</a>";
            }

        }
    );

});

相关HTML:

<div id="blueimp-gallery-carousel" class="blueimp-gallery blueimp-gallery-controls blueimp-gallery-carousel karussell">
    <div class="slides"></div>
        <h3 class="title"></h3>
        <a class="prev">&lt;</a>
        <a class="next">&gt;</a>
</div>
<div id="links">
    <a href="link.html" data-link="img.jpg" title="title1">
    </a>
    <a href="link2.html" data-link="img2.jpg" title="title2">
    </a>
</div>

澄清我希望它看起来是否是HTML的示例:

<div><img src="carousel of moving images"></div>
<div>Title text <a href="link">with links </a> and <strong>styles</strong>. (moving according to the image)</div>
javascript carousel image-gallery blueimp
1个回答
1
投票

我通过改变blueimp-gallery.js第960行来实现这个结果:

titleElement[0].appendChild(document.createTextNode(text))

对此:

(titleElement[0]).innerHTML = text

不确定是否有任何缺点,但是,显然不希望编辑主要源代码。

© www.soinside.com 2019 - 2024. All rights reserved.