fix annc_widget15

This commit is contained in:
chihyux 2020-07-28 23:46:15 +08:00
parent 6472e9766d
commit 7804a3e749
1 changed files with 28 additions and 95 deletions

View File

@ -3,14 +3,13 @@
<h2 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h2>
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}"><%= (I18n.locale.to_s =="zh_tw") ? "更多最新消息" : "More NEWS" %></a>
</div>
<div style="position: absolute;top: 9em;width:100%;">
<div style="position: absolute;top: 9em;width:100%; z-index:99;">
<button class="btn-left" title = "<%= (I18n.locale.to_s =="zh_tw") ? "上一張" : "prev" %>" style="float: left;height: 2.5em; width: 2.5em;background: url(/assets/left-01.png) no-repeat;border: 0;background-size: contain;position: absolute;transition:.3s; left: 0;"></button>
<button class="btn-right" title = "<%= (I18n.locale.to_s =="zh_tw") ? "下一張" : "next" %>" style="float: right;;height: 2.5em; width: 2.5em;background: url(/assets/right-01.png) no-repeat;background-size: contain;border: 0;position: absolute;transition:.3s;right: 0;"></button>
</div>
<ul class="w-annc__list row" data-level="0" data-list="announcements">
<li class="w-annc__item col-md-4">
<ul class="w-annc__list row owl-carousel {{subpart-id}}" data-level="0" data-list="announcements" style="width: 95%; margin: 0 auto;">
<li class="w-annc__item">
<div class="w-annc__img-wrap bullseye">
<img class="w-annc__img" src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
</div>
@ -35,96 +34,30 @@
</div>
</li>
</ul>
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}"><i class="fa fa-arrow-circle-o-right" aria-hidden="true"></i><%= (I18n.locale.to_s =="zh_tw") ? "Read More" : "More NEWS" %></a>
</div>
<script src="//code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
function combineul(){
for(var i=1;i<$('.widget-announcement-15 ul.w-annc__list').length;i++)
$('.widget-announcement-15 ul.w-annc__list').eq(0).find('>li').eq(-1).after($('.widget-announcement-15 ul.w-annc__list').eq(i).html());
var ullength = $('.widget-announcement-15 ul.w-annc__list').length;
for(var i = 1;i < ullength;i++)
$('.widget-announcement-15 ul.w-annc__list').eq(-1).remove();
};
var lilength = $('.widget-announcement-15 li.w-annc__item').length;
var num;
function reorganize(num){
combineul();
for(var i=1;i< Math.ceil(lilength/num);i++){
$('.widget-announcement-15 ul.w-annc__list').eq(-1).after('<ul class="w-annc__list row" data-level="0" data-list="announcements"></ul>')
var lihtml="";
//var liheight=new Array(num);
if(i != (Math.ceil(lilength/num)-1)){
for(var j=0;j<num;j++){
lihtml += "<li class='w-annc__item col-md-4'>"+$('.widget-announcement-15 li.w-annc__item').eq(i*num+j).html()+"</li>"
//liheight[j] = $('.widget-announcement-15 li.w-annc__item').eq(i*num+j).height()+20;//20=>margin-top+margin-bottom
};
}else{
for(var j=0;j< lilength - num *(Math.ceil(lilength/num)-1) ;j++){
lihtml += "<li class='w-annc__item col-md-4'>"+$('.widget-announcement-15 li.w-annc__item').eq(i*num+j).html()+"</li>"
//liheight[j] = $('.widget-announcement-15 li.w-annc__item').eq(i*num+j).height()+20;//20=>margin-top+margin-bottom
};
};
$('.widget-announcement-15 ul.w-annc__list').eq(-1).html(lihtml);
};
if(Math.ceil(lilength/num) != 1 )
for(var i=0;i< lilength -num ; i++ )
$('.widget-announcement-15 ul.w-annc__list').eq(0).find("li.w-annc__item").eq(num).remove();
for(var i=0;i< Math.ceil(lilength/num);i++)
$('.widget-announcement-15 ul.w-annc__list').eq(i).attr("index",i);
$('.widget-announcement-15 ul.w-annc__list').css("display","none");
$('.widget-announcement-15 ul.w-annc__list').eq(0).css("display","flex");
$('.widget-announcement-15 ul.w-annc__list').eq(0).addClass("active");
$('.widget-announcement-15 ul.w-annc__list').css('padding','0 1.125em');
$('.widget-announcement-15 button').css('z-index','10');
$('.widget-announcement-15 ul.w-annc__list >li').css('width','calc('+100/num+'% )');
};
$(window).resize(function(){
if($(window).width()>1024){
reorganize(3);
num=3;
}else if($(window).width()>576){
reorganize(2);
num=2;
}else{
reorganize(1);
num=1;
}
})
$(document).ready(function(){
if($(window).width()>1024){
reorganize(3);
num=3;
}else if($(window).width()>576){
reorganize(2);
num=2;
}else{
reorganize(1);
num=1;
}
var flag=false;
$('.btn-left').click(function(){
if(!flag){
var currentul = Number($('.widget-announcement-15 ul.w-annc__list.active').attr("index"));
$('.widget-announcement-15 ul.w-annc__list').css('display','none');
if(currentul - 1 < 0)
currentul += Math.ceil(lilength/num);
$('.widget-announcement-15 ul.w-annc__list').removeClass("active");
$('.widget-announcement-15 ul.w-annc__list').eq(currentul-1).addClass("active");
flag=true;
$('.widget-announcement-15 ul.w-annc__list.active').eq(0).effect("slide", { direction: "left", mode: 'show', duration: 500},function(){flag=false;});
};
});
$('.btn-right').click(function(){
if(!flag){
var currentul = Number($('.widget-announcement-15 ul.w-annc__list.active').attr("index"));
$('.widget-announcement-15 ul.w-annc__list').css("display","none");
if(currentul + 1 > Math.ceil(lilength/num) - 1)
currentul -= Math.ceil(lilength/num);
$('.widget-announcement-15 ul.w-annc__list').removeClass("active");
$('.widget-announcement-15 ul.w-annc__list').eq(currentul+1).addClass("active");
flag=true;
$('.widget-announcement-15 ul.w-annc__list.active').eq(0).effect("slide", { direction: "right", mode: 'show', duration: 500},function(){flag=false;});
};
});
});
</script>
$('.owl-carousel').owlCarousel({
loop:true,
margin:10,
responsiveClass:true,
items:3,
responsive:{
0:{
items:1,
nav:true
},
580:{
items:3,
nav:false
},
}
})
$('.btn-right').click(function() {
$(this).parent().siblings('.owl-carousel').trigger('next.owl.carousel', [300]);
})
$('.btn-left').click(function() {
$(this).parent().siblings('.owl-carousel').trigger('prev.owl.carousel', [300]);
})
</script>