admin管理员组文章数量:1318572
I am looking for a JQuery solution to something like the rotating banner located at .
One where it has a timed scroll but also allows the user to toggle by rolling over tabs. Anyone know of a good, easy to style one?
I am looking for a JQuery solution to something like the rotating banner located at http://www.bazaarvoice..
One where it has a timed scroll but also allows the user to toggle by rolling over tabs. Anyone know of a good, easy to style one?
Share Improve this question asked Jan 13, 2010 at 20:48 bgadocibgadoci 6,49317 gold badges66 silver badges91 bronze badges1 Answer
Reset to default 8Use the Cycle Lite plugin for jQuery. It's got a vert small footprint and all the features you need:
- Auto scroll
- Pause on hover
- Infinite loop or defined number of loops
- Use thumbshots as pager elements
- You'll have to use divs instead of images.
See more advanced demos right here.
Edit: here's a sample code for you:
You'll need the Cycle plugin, not the Cycle Lite plugin.
HTML:
<div id="slideshow">
<ul class="pager">
<!-- will be populated with thumbs by JS -->
</ul>
<!-- each div is considered as a slide show -->
<div><img src="/images/banner1.png" />You can place text here too !</div>
<div><img src="/images/banner2.png" /></div>
<div><img src="/images/banner3.png" /></div>
</div>
CSS:
.thumb.selected {
border: 2px gray solid;
}
ul.pager li {
list-style: none;
float: left;
width: 200px;
height: 80px;
background-color: #eee;
}
#slideshow > div {
background-color: #eee;
border: 1px solid #ddd;
}
Javascript:
$("#slideshow").cycle({
fx: 'fade', // name of transition effect (or ma separated names, ex: fade,scrollUp,shuffle)
timeout: 1000, // milliseconds between slide transitions (0 to disable auto advance)
speed: 400, // speed of the transition (any valid fx speed value)
pager: "#tabs",// selector for element to use as pager container
pagerClick: null, // callback fn for pager clicks: function(zeroBasedSlideIndex, slideElement)
pagerEvent: 'hover',// name of event which drives the pager navigation
pagerAnchorBuilder: function(i, slide){// callback fn for building anchor links: function(index, DOMelement)
return '<li class="thumb" id="thumb-1"><img src="' + slide.src + '" height="30" width="40" /></a></li>';
},
before: function(){ // deselect all slides
$(".thumb").removeClass('selected');
},
after: function(foo, bar, opts){ // select current slide
$("#thumb-"+opts.currSlide).addClass('selected');
},
fit: 1, // force slides to fit container
pause: 1, // true to enable "pause on hover"
pauseOnPagerHover: 1, // stop slideshow when pagers are being hovered
autostop: 0, // true to end slideshow after X transitions (where X == slide count)
autostopCount: 0, // number of transitions (optionally used with autostop to define X)
slideExpr: "div", // all content of div#slider is a slide. but not the pager
fastOnEvent: 100, // force fast transitions when triggered manually (via pager or prev/next); value == time in ms
});
Enjoy, it's untested, but should work.
Edit2:
Replace the pagerAnchorBuilder option with return '<li class="thumb" id="thumb-1"><img src="' + slide.src + '" /></a></li>';
I guess you want to change the width and/or the height. Juste remove the HTML height, and use a CSS property : .thumb img { height: 10px; width: 10px; }
You can also add some custom CSS properties.
本文标签: javascriptJQuery Rotating Banner QuestionStack Overflow
版权声明:本文标题:javascript - JQuery Rotating Banner Question - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1742047954a2417901.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论