如何使用jquery动态调整幻灯片显示?

时间:2010-09-08 20:34:07

标签: jquery html this attr

我还在学习jquery和javascript,所以请耐心等待。我已经在jquery中使用了一个教程来使用jquery的循环函数创建幻灯片。

很棒,允许我旋转包含图像和标题的单个div。

$(document).ready(function() {
$('#gallery').cycle({
    fx: 'scrollRight',
    timeout: 5000,
    speed: 500,
    delay: -2000,
    pager: '#pager',
    next: '#next',
    prev: '#prev'
});




$('#playControl').text('Play');

$('.credit imAgE (I had to change this because of rules for newbies').each(function (){
var widthSpacer = $(this).attr('width');
$('.credit p').css('width', widthSpacer + 10);
});


$('#playControl').toggle(

        function() {
            $('#gallery').cycle('resume');
            $(this).text('Pause');

        },
        function() {
            $('#gallery').cycle('pause');
            $(this).text('Play');

        });

}); // end ready()
</script>

<div style="width: 640px;">


  <div id="contentWrap">
  <div id="main">

  <div id="controls">
  <span id="prev" class="control">Previous</span>
    <span id="pager"></span>
    <span id="next" class="control">Next</span>
    <span id="playControl" class="control">Pause</span>
  </div>
  <div id="gallery">

<div class="credit"><image tag 1>
    <p>Pic one caption</p>
     </div>   

  <div class="credit"><image tag n">
    <p >Pic caption n</p>
     </div>   

问题是标题宽度仍然是容器的宽度。对于整个容器宽度的图像是可以的,但如果它们很窄则不行。

我一直在尝试调整div中的<p>标记,使其宽度与图像相同,但它只为所有“信用”中的每个<p>设置一次width属性“等级div,而不是轮流循环。

1 个答案:

答案 0 :(得分:0)

您应该在CSS中为容器添加一组min-width,并设置width:auto。希望有所帮助。

使用你的CSS,听起来你可能能够使用CSS而不是使用jQuery单独为每张幻灯片单独修复它。