2010-01-14 2 views
0

Я успешно установил плагин Cycle для JQuery и включил свои баннеры так, как я их хочу. Мой вопрос заключается в создании якорей. Я пытаюсь построить нечто похожее на http://www.bazaarvoice.com.JQuery Cycle Plugin Вопрос

Кажется, что якоря генерируются из javascript, но я могу ошибаться. Вот мой html и javascript.

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" />and here</div> 
     <div><img src="/images/banner3.png" />and even here</div> 
    </div><!-- close #slideshow --> 
<div id="tabs"></div> 

Javascript

$("#slideshow").cycle({ 
    fx:   'fade', // name of transition effect (or comma separated names, ex: fade,scrollUp,shuffle) 
    timeout:  5000, // 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 
}); 

Похоже, это было бы в pagerAnchorBuilder, но не уверен.

+0

ваш HTML не отображается, вы отделили его должным образом? –

+0

Упс. Фиксация сейчас. Также я понял, что если я поставлю

, я получу большие пальцы, но попытаюсь выяснить, куда положить «большой палец», чтобы он появился. – bgadoci

ответ

0

выглядит как вам не хватает начинающему тега привязки

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>'; 
}, 

прямо между <li> и <img> оно должно быть. Кажется, у вас уже есть конец. правильный путь должен выглядеть примерно так:

pagerAnchorBuilder: function(i, slide){// callback fn for building anchor links: function(index, DOMelement) 
    return '<li class="thumb" id="thumb-1"><a href="path-to-link"><img src="' + slide.src + '" height="30" width="40" /></a></li>'; 
}, 

, если вы хотите изменить ссылку на основе ID слайда, вы можете что-то вроде этого:

pagerAnchorBuilder: function(i, slide){// callback fn for building anchor links: function(index, DOMelement) 
    switch(slide.attr("id")){ 
     case "one": return '<li class="thumb" id="thumb-1"><a href="path-to-first-link"><img src="' + slide.src + '" height="30" width="40" /></a></li>'; 
     case "two": return '<li class="thumb" id="thumb-1"><a href="path-to-second-link"><img src="' + slide.src + '" height="30" width="40" /></a></li>'; 
     case "three": return '<li class="thumb" id="thumb-1"><a href="path-to-third-link"><img src="' + slide.src + '" height="30" width="40" /></a></li>'; 
    } 


}, 
+0

О, ты имеешь в виду тег bgadoci

+0

я отредактировал сообщение для добавления в условное заявление –

+0

На самом деле, извините, пауза работает onHover, но при переходе от ссылки к ссылке на соответствующий баннер она не меняется. – bgadoci

Смежные вопросы