移動端-圖片全屏展示

大圖_html

<div class="bigImg" id="bigImg" style="display:none">

????<div class="icon_prev"></div>

????<div class="icon_next"></div>

????<div class="icon_close"></div>

????<div class="img_content"></div>

</div>

? 大圖_CSS

.bigImg{

????position: fixed;

????background-color: rgba(0,0,0, 0.9);

????left: 0;

????top: 0;

????right: 0;

????bottom: 0;

????z-index: 100;

}

.icon_prev,.icon_next{

????position: absolute;

????width: 80px;

????color: #ccc;

????font-size: 30px;

????cursor: pointer;

????z-index: 101;

????font-family: cursive;

}

.icon_prev:hover, .icon_next:hover{

????background: rgba(0,0,0, 0.1);

????color: #fff;

}

.icon_prev{

????left: 0;

????top: 0;

????bottom: 0;

}

.icon_next{

????right: 0;

????top: 0;

????bottom: 0;

}

.icon_prev::before{

????content:"<";

????position: absolute;

????height: 30px;

????margin-top: -30px;

????top: 50%;

????left: 35px;

}

.icon_next::before{

????content: ">";

????position: absolute;

????height: 30px;

????margin-top: -30px;

????top: 50%;

????left: 35px;

}

.icon_close{

????position: absolute;

????top: 20px;

????right: 20px;

????width: 25px;

????height: 25px;

????color: #ccc;

????font-size: 34px;

????line-height: 20px;

????text-align: center;

????cursor: pointer;

????z-index: 102;

}

.icon_close::before{

????content: "x";

}

.img_content{

????position: relative;

????width: 999999px;

}

.img_item{

????float: left;

????position: relative;

????background-image: url(../img/下載.gif);

????background-position: center center;

????background-repeat: no-repeat;

}

.img_item:after{

????clear: both;

????content: "";

????display: block;

}

.img_item img{

????box-shadow: 0 0 8px rgba(0,0,0,0.8);

????position: absolute;

????top: 50%;

????left: 50%;

}

加載圖片_GIF

下載.gif

動態(tài)添加圖片_JS

追加大圖項(xiàng)目

//本地圖片或接口圖片

var imgList = [

????"../img/001.png",

????"../img/002.png",

];

var length= imgList.length;

for (var i = 0; i < length; i++) {

????var imgSlide = $('<div class="img_item"><img src="' + ?imgList?[i] + '"></li>');

????$("#bigImg .img_content").append(imgSlide);

初始化大圖樣式

// 大圖動態(tài)樣式

$("#bigImg .img_content").css({"transition-duration":"500ms","transform":"translate(0px, 0px)"});

$("#bigImg .img_item").css({"width":window.innerWidth,"height":window.innerHeight});

$("#bigImg .img_item img").css(

????{

????"width":window.innerWidth,

????"height":"auto",

????"margin-left": -window.innerWidth*0.5,

????"margin-top": -window.innerHeight*0.5*0.7,

????"display": "inline"

});

點(diǎn)擊查看大圖事件

$('#goal li').on('click', function() {

????var index = $(this).index();

????var max = -window.innerWidth*index;

????$("#bigImg").show();

????$("#bigImg .img_content").css({"transition-duration":"500ms","transform":"translate("+max+"px, 0px)"});

});

點(diǎn)擊關(guān)閉大圖

$('#bigImg .icon_close').on('click', function(e) {

????e.preventDefault();

????$("#bigImg").hide();

})

左右點(diǎn)擊切換大圖

var imgTotal = $("#bigImg .img_content").children(".img_item").length;

// 點(diǎn)擊向左切換圖片

$('#bigImg .icon_prev').on('click', function(e) {

????e.preventDefault();

????var sx = $("#bigImg .img_content").css("transform").replace(/[^0-9\-,]/g,'').split(',')[4];

????var max = window.innerWidth*imgTotal;

????var x = Number(sx)+window.innerWidth;

????if(-Number(sx) > 0 && -Number(sx)< max ){

????$("#bigImg .img_content").css({"transition-duration":"500ms","transform":"translate("+x+"px, 0px)"});

????}

? ? //首圖_隱藏左邊切換按鈕

? ??$('#bigImg .icon_next').show(); if(-Number(sx) == window.innerWidth){ $(this).hide(); }

})

// 點(diǎn)擊向右切換圖片

$('#bigImg .icon_next').on('click', function(e) {

????e.preventDefault();

????var sx = $("#bigImg .img_content").css("transform").replace(/[^0-9\-,]/g,'').split(',')[4];

????var max = -window.innerWidth*imgTotal;

????var x = Number(sx)-window.innerWidth;

????if(max < x){

????????$("#bigImg .img_content").css({"transition-duration":"500ms","transform":"translate("+x+"px, 0px)"});

????}

? ???//末圖_隱藏右邊切換按鈕

????$('#bigImg .icon_prev').show(); var maxImg = sx-window.innerWidth*2; if(maxImg == max){ ????$(this).hide(); }

})

左右滑動切換大圖

$("#bigImg .img_item").on("touchstart", function(e) {

????// 判斷默認(rèn)行為是否可以被禁用

????if (e.cancelable) {

????????// 判斷默認(rèn)行為是否已經(jīng)被禁用

????????if (!e.defaultPrevented) {

????????????e.preventDefault();

????????}

????}

????startX = e.originalEvent.changedTouches[0].pageX,

????startY = e.originalEvent.changedTouches[0].pageY;

});

$("#bigImg .img_item").on("touchend", function(e) {

????// 判斷默認(rèn)行為是否可以被禁用

????if (e.cancelable) {

????// 判斷默認(rèn)行為是否已經(jīng)被禁用

????????if (!e.defaultPrevented) {

????????????e.preventDefault();

????????}

????}

????moveEndX = e.originalEvent.changedTouches[0].pageX,

????moveEndY = e.originalEvent.changedTouches[0].pageY,

????X = moveEndX - startX,

????Y = moveEndY - startY;

????index = $(this).index();

????//左滑

????if (X > 50) {

????????if(index == 0){

????????return;

????}

????var sx = $("#bigImg .img_content").css("transform").replace(/[^0-9\-,]/g,'').split(',')[4];

????var max = window.innerWidth*imgTotal;

????var x = Number(sx)+window.innerWidth;

????if(-Number(sx) > 0 && -Number(sx)< max ){

????$("#bigImg .img_content").css({"transition-duration":"500ms","transform":"translate("+x+"px, 0px)"});

????}

? ?? //首圖_隱藏左邊切換按鈕

? ??$('#bigImg .icon_next').show(); if(-Number(sx) == window.innerWidth){ $('#bigImg .icon_prev').hide(); }

}

//右滑

else if (X < -50) {

????var sx = $("#bigImg .img_content").css("transform").replace(/[^0-9\-,]/g,'').split(',')[4];

????var max = -window.innerWidth*imgTotal;

????var x = Number(sx)-window.innerWidth;

????if(max < x){

????????$("#bigImg .img_content").css({"transition-duration":"500ms","transform":"translate("+x+"px, 0px)"});

????????}

??????//末圖_隱藏右邊切換按鈕?

? ? ? ?$('#bigImg .icon_prev').show(); var maxImg = sx-window.innerWidth*2; if(maxImg == max){ ????????$('#bigImg .icon_next').hide(); }

????}

????//下滑

????else if (Y > 50) {

????????// alert('下滑');

????}

????//上滑

????else if (Y < -50) {

???????// alert('上滑');

????}

});

效果圖


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市逆航,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件即横,死亡現(xiàn)場離奇詭異塔沃,居然都是意外死亡脱惰,警方通過查閱死者的電腦和手機(jī)轻绞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進(jìn)店門采记,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人政勃,你說我怎么就攤上這事唧龄。” “怎么了奸远?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵既棺,是天一觀的道長。 經(jīng)常有香客問我懒叛,道長丸冕,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任芍瑞,我火速辦了婚禮晨仑,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘拆檬。我一直安慰自己洪己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布竟贯。 她就那樣靜靜地躺著答捕,像睡著了一般。 火紅的嫁衣襯著肌膚如雪屑那。 梳的紋絲不亂的頭發(fā)上拱镐,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天,我揣著相機(jī)與錄音持际,去河邊找鬼沃琅。 笑死,一個胖子當(dāng)著我的面吹牛蜘欲,可吹牛的內(nèi)容都是我干的益眉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼姥份,長吁一口氣:“原來是場噩夢啊……” “哼郭脂!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起澈歉,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤展鸡,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后埃难,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體莹弊,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡涤久,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了箱硕。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拴竹。...
    茶點(diǎn)故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖剧罩,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情座泳,我是刑警寧澤惠昔,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站挑势,受9級特大地震影響镇防,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜潮饱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一来氧、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧香拉,春花似錦啦扬、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至盛险,卻和暖如春瞄摊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背苦掘。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工换帜, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人鹤啡。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓惯驼,卻偏偏與公主長得像,于是被迫代替她去往敵國和親揉忘。 傳聞我的和親對象是個殘疾皇子跳座,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,044評論 2 355