2

最近,我在我的项目中创建了 Camers 幻灯片。所有功能都运行良好。但是,我想以固定的高度和宽度在幻灯片 div 之外显示标题。请帮我。下面是我的代码。

<script type="text/javascript">
    jQuery(function () {
        jQuery('#camera_wrap_3').camera({
            height: '56%',
            hover: true,
            time: 1000,
            fx: 'scrollLeft',
            pagination: false,
            thumbnails: true,
            imagePath: '../images/'
        });

    });
</script>

<div class="fluid_container">
        <p>Videos, HTML elements and data- attributes</p>
        <div class="camera_wrap camera_emboss" id="camera_wrap_3" style="height: 180px !important;">
            <div data-thumb="AutoSlider/Images/big_bunny_fake.jpg" data-src="AutoSlider/Images/SmallThumbs/big_bunny_fake.jpg">
                <div style="position: absolute; top: 5%; left: 5%; background: #000; color: #fff; padding: 5px; width: 25%" class="fadeIn camera_effected">
                    Content1
                </div>
            </div>
            <div data-thumb="AutoSlider/Images/leaf.jpg" data-src="AutoSlider/Images/SmallThumbs/leaf.jpg">
                <div style="position: absolute; top: 5%; left: 5%; background: #000; color: #fff; padding: 5px; width: 25%" class="fadeIn camera_effected">
                    Content2
                </div>
            </div>
            <div data-thumb="AutoSlider/Images/road.jpg" data-src="AutoSlider/Images/SmallThumbs/road.jpg" data-time="1500" data-trasperiod="4000" data-link="http://www.google.com/" data-target="_blank">
                <div class="camera_caption fadeFromBottom">
                    Content3

                </div>
            </div>
        </div>
    </div>
4

2 回答 2

0

我知道我参加聚会有点晚了,但是...

由于没有简单的方法可以使用此插件开箱即用地执行此操作,因此您可以在每次幻灯片更改时更改 div 的内容。

根据http://www.pixedelic.com/plugins/camera/

从 Camera 1.3.0 开始,您可以通过以下方式使用回调获取当前滑块的索引:

onLoaded: function(){
  var ind = t.find('.camera_target .cameraSlide.cameranext').index();
}

onLoadedoronStartTransition函数中,您可以根据刚刚转换到的幻灯片设置您放置在页面上任何位置的 div 的文本。

我创建了一个jsFiddle来展示你如何做这样的事情,但是

基本上代码逻辑看起来像这样:

$('#camera_wrap_3').camera({

    // camera setup here

    onLoaded: function(){
      var slide = $('.camera_target .cameraSlide.cameranext').index();
        if(slide == 1){
            $('#textbox').text('1980');
        } else if (slide == 2){
            $('#textbox').text('2008');
        } else if(slide == 3) {
            $('#textbox').text('2009');
        }
    }        
});

希望这对将来偶然发现此问题的人有所帮助!

于 2014-04-15T05:34:09.953 回答
0

更好的使用

jQuery('.camera_target .cameraSlide.cameracurrent').index()

使用onEndTransition获取当前索引:

我在使用时遇到了很多麻烦

jQuery('.camera_target .cameraSlide.cameranext').index()

因为它计数不正确!

于 2015-05-08T12:51:22.857 回答