最近因为要写新的mobile site页面,有好几个页面上面必须用到photo slider。
使用插件:
/*
* Swipe 2.0 * * Brad Birdsall * Copyright 2013, MIT License **/Github:https://github.com/thebird/Swipe
在使用的时候,发现只要是在两张照片的情况下,你会在chrome的F12调试中的Elements选项中发现swipe js使用js动态创建出来了4个div,这里是使用如下的代码:
123 __(foreach from=$all_content_information item=content_information)__ 4 __(if $content_information.content_type == "image")__ 5116 78 __(/if)__ 9 __(/foreach)__10
那个调试的就不截图了,但是你使用Ctrl+u查看源代码就会发现源代码中的图片数是正确的。所以模板当中不存在条件判断失误的问题了,只能是在swipe js中出现问题。
于是,顺藤摸瓜,打开swipe.js文件后,如果在Line 47-Line 53就发现了那一段在处理两张图片时候的代码。
1 //Source codes: 2 if (browser.transitions && options.continuous && slides.length < 3) { 3 element.appendChild(slides[0].cloneNode(true)); 4 element.appendChild(element.children[1].cloneNode(true)); 5 slides = element.children; 6 } 7 8 //Modified codes: 9 10 //special case if two slides11 if (browser.transitions && options.continuous && slides.length < 3) {12 //element.appendChild(slides[0].cloneNode(true));13 //element.appendChild(element.children[1].cloneNode(true));14 //slides = element.children;15 }
不想知道根源的,只需要将那个if注销就好了。