js實(shí)現(xiàn)圖片左右滾動(dòng)效果
需求:頁(yè)面顯示教師信息列表,列表中每一條數(shù)據(jù)顯示圖片滾動(dòng)插件,每張圖片的長(zhǎng)寬及長(zhǎng)寬比例各不相同。
前提條件:美工把靜態(tài)頁(yè)面寫好
HTML代碼:
@using Models;
@{
List<cms_content> teacherList = ViewData["teacherList"] as List<cms_content>; //春雨樹(shù)頻道
PagerModel pager = ViewData["pager"] as PagerModel;
}
<div class="teacherteam_box">
<h1>教師團(tuán)隊(duì)</h1>
@foreach (cms_content teacher in teacherList)
{
<div class="teacher_box">
<div class="teacher_img fl">
<img src="~/Theme/images/t1.png" />
</div>
<div class="teacher_infor fl">
<h2>@teacher.title</h2>
<p>
@teacher.description
</p>
<div class="products_box">
<div class="products_pre">
<img src="~/Theme/images/left.png" />
</div>
<div class="products_next">
<img src="~/Theme/images/right.png" />
</div>
<div class="div-imgbox">
<ul>
@foreach (Tuple<string, string> item in teacher.imgList)
{
<li>
<img alt="@item.Item1" src="@item.Item2" />
</li>
}
</ul>
</div>
</div>
</div>
<div class="clear"></div>
</div>
}
<div class="page_box">
<span>共@(pager.totalRows)條信息</span>
<a href="javascript:void(0);" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="teacherPage(this,1)">首頁(yè)</a>
<a href="javascript:void(0);" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="teacherPage(this,2)">上一頁(yè)</a>
<a href="javascript:void(0);" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><i>@pager.page</i><b>/@pager.pageCount</b>頁(yè)</a>
<a href="javascript:void(0);" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="teacherPage(this,3)">下一頁(yè)</a>
<a href="javascript:void(0);" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="teacherPage(this,4)">尾頁(yè)</a>
</div>
</div>
JS代碼:
<script type="text/javascript">
var _lock = false;
$(function () {
teacherPage(null, null);
});//end $
//教師團(tuán)隊(duì)
//flag=1首頁(yè),2上一頁(yè),3下一頁(yè),4尾頁(yè)
function teacherPage(obj, flag) {
var totalPage = 1;
var page = 1;
if (obj) {
page = parseInt($(obj).parent().find("i").text());
totalPage = parseInt($(obj).parent().find("b").text().replace("/", ""));
}
if (flag == 1) { page = 1; }
if (flag == 2 && page > 1) { page = page - 1; }
if (flag == 3 && page < totalPage) { page = page + 1; }
if (flag == 4) { page = totalPage; }
$.ajax({
type: "GET",
url: "@Url.Content("~/")home/teachers?t=" + new Date().valueOf(),
data: { page: page },
success: function (data) {
$('#teachers').html(data);
sliderImg();
}
});
}
//滾動(dòng)圖片
function sliderImg() {
$(".products_next").click(function () {
if (_lock) return;
_lock = true;
var ul = $(this).parent().find("ul");
if (!canSlider(ul)) { _lock = false; return; }
var liFirst = ul.find("li:first");
var margin = liFirst.width() + 15;
var speed = margin * 3;
liFirst.animate({
marginLeft: 0 - margin
}, speed);
setTimeout(function () {
liFirst.remove();
ul.append("<li>" + liFirst.html() + "</li>");
_lock = false;
}, speed);
});
$(".products_pre").click(function () {
if (_lock) return;
_lock = true;
var ul = $(this).parent().find("ul");
if (!canSlider(ul)) { _lock = false; return; }
var liLast = ul.find("li:last");
var margin = liLast.width() + 15;
var speed = margin * 3;
ul.prepend("<li style='margin-left:-" + margin + "px; '>" + liLast.html() + "</li>");
var liFirst = ul.find("li:first");
liFirst.animate({
marginLeft: 0
}, speed);
setTimeout(function () {
liLast.remove();
_lock = false;
}, speed);
});
}
//判斷圖片是否可以滾動(dòng)
function canSlider(ul) {
var width = 0;
ul.find("li").each(function () {
var li = $(this);
width = width + li.width() + 15;
});
if (width <= 710) {
return false;
}
return true;
}
</script>
效果圖:

以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!
- JS實(shí)現(xiàn)長(zhǎng)圖上下滾動(dòng)效果
- JS圖片無(wú)縫、平滑滾動(dòng)代碼
- js實(shí)現(xiàn)圖片無(wú)縫滾動(dòng)特效
- 用js實(shí)現(xiàn)的一個(gè)Flash滾動(dòng)輪換顯示圖片代碼生成器
- JS實(shí)現(xiàn)div內(nèi)部的文字或圖片自動(dòng)循環(huán)滾動(dòng)代碼
- div+css布局的圖片連續(xù)滾動(dòng)js實(shí)現(xiàn)代碼
- js jquery做的圖片連續(xù)滾動(dòng)代碼
- JavaScript代碼實(shí)現(xiàn)圖片循環(huán)滾動(dòng)效果
- JS實(shí)現(xiàn)圖片橫向滾動(dòng)效果示例代碼
- JavaScript實(shí)現(xiàn)長(zhǎng)圖滾動(dòng)效果
相關(guān)文章
js+canvas實(shí)現(xiàn)圖片格式webp/png/jpeg在線轉(zhuǎn)換
這篇文章主要介紹了js+canvas實(shí)現(xiàn)圖片格式webp/png/jpeg在線轉(zhuǎn)換,需要的朋友可以參考下2020-08-08
JavaScript實(shí)現(xiàn)輪播圖方法(邏輯清晰一看就懂)
這篇文章主要給大家介紹了關(guān)于JavaScript實(shí)現(xiàn)輪播圖方法的相關(guān)資料,JS輪播圖的實(shí)現(xiàn)核心是使用JavaScript來(lái)控制圖片的切換和顯示,配合HTML和CSS完成布局和樣式設(shè)置,文中介紹的方法邏輯清晰一看就懂,需要的朋友可以參考下2023-12-12
Input 特殊事件onpopertychange和oninput
onpopertychange和oninput的區(qū)別。2009-06-06
javascript:FF/Chrome與IE動(dòng)態(tài)加載元素的區(qū)別說(shuō)明
今天在寫一段js時(shí),發(fā)現(xiàn)IE與FF在動(dòng)態(tài)加載Html元素時(shí),有一些差別,一起過(guò)來(lái)看看下面的代碼吧2014-01-01
JS字符串false轉(zhuǎn)boolean的方法(推薦)
下面小編就為大家?guī)?lái)一篇JS字符串false轉(zhuǎn)boolean的方法(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03
javascript Promise簡(jiǎn)單學(xué)習(xí)使用方法小結(jié)
下面小編就為大家?guī)?lái)一篇javascript Promise簡(jiǎn)單學(xué)習(xí)使用方法小結(jié)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-05-05
如何快速的呈現(xiàn)我們的網(wǎng)頁(yè)的技巧整理
如何快速的呈現(xiàn)我們的網(wǎng)頁(yè)的技巧整理...2007-07-07
js 索引下標(biāo)之li集合綁定點(diǎn)擊事件
本文通過(guò)一段實(shí)例代碼給大家講解了js索引下標(biāo)之li集合綁定點(diǎn)擊事件的相關(guān)知識(shí),代碼簡(jiǎn)單易懂,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧2018-01-01

