ฉันเพิ่งสร้างเว็บไซต์ที่มีแกลเลอรี่ง่าย ๆ และฉันก็ไม่ได้ใช้โมดูลสไลด์โชว์เพิ่มเติมเลย สิ่งที่ฉันต้องการคือjQuery Cycleและจาวาสคริปต์เล็ก ๆ น้อย ๆ เพิ่มในธีมที่กำหนดเองของฉัน ไซต์นี้มีประเภทเนื้อหา 'รูปถ่าย' และคำศัพท์ 'อัลบั้ม' เพื่อกำหนดรูปถ่ายให้กับอัลบั้มต่างๆ มุมมองจะสร้างรายการภาพถ่ายที่กรองโดยอัลบั้ม ในชุดรูปแบบของฉันฉันมีไฟล์ js ที่มีลักษณะดังนี้:
(function($){
Drupal.behaviors.myAlbumSlideshow = {
attach: function(){
var slideshowContent = $('.view-fotoalbum.view-display-id-page_1>.view-content');
slideshowContent.before('<div id="slideshow-prev"><</div><div id="slideshow-next">></div>');
slideshowContent.cycle({
fx: 'scrollHorz',
next: '#slideshow-next',
prev: '#slideshow-prev',
timeout: 0
});
var slideshowHeight = slideshowContent.height() + 'px';
$('#slideshow-prev, #slideshow-next').css('lineHeight', slideshowHeight);
}
}
})(jQuery)
CSS ที่เสร็จสมบูรณ์แล้ว:
.view-fotoalbum {
width: 710px;
margin-right: 10px;
}
.view-fotoalbum #slideshow-prev {
color: #808080;
border-right: 1px solid #808080;
cursor: pointer;
float: left;
line-height: 300px;
margin-left: -40px;
text-align: center;
width: 30px;
}
.view-fotoalbum #slideshow-next {
color: #808080;
border-left: 1px solid #808080;
cursor: pointer;
float: right;
line-height: 300px;
margin-right: -40px;
text-align: center;
width: 30px;
}
PS IMHO มันไม่ได้ดีกว่าเสมอไปที่จะมีโหนดเดียวต่อภาพ เป็นความจริงที่วิธีการนี้ให้ความยืดหยุ่นมากกว่า (ตัวอย่างเช่นการเพิ่มภาพหนึ่งภาพลงในสไลด์โชว์หลายภาพ) แต่สำหรับผู้ใช้บางคนความยืดหยุ่นที่ไม่จำเป็นเป็นเพียงความซับซ้อนที่ไม่มีจุดหมาย