Fix js bug and adjust page three column.
This commit is contained in:
parent
136d2d60cf
commit
696dbf7ca6
|
@ -2,6 +2,12 @@
|
|||
// ECMAScript 5 嚴格模式
|
||||
'use strict';
|
||||
|
||||
$.fn.replace_bootstrap_col_class = function(colcls){
|
||||
$(this).removeClass(function(index, css) {
|
||||
return (css.match(/(^|\s)col-\S+/g) || []).join(' ');
|
||||
})
|
||||
.addClass(colcls);
|
||||
}
|
||||
// 初始函數: 把所有的程式碼都包在init裡面,方便在之後的jQuery ready 函數裡一次呼叫
|
||||
function init() {
|
||||
// 快取一些常用的變數
|
||||
|
@ -270,20 +276,49 @@
|
|||
var $rightCol = $(rightCol);
|
||||
var columnCls = columnCls || 'col-sm-12';
|
||||
|
||||
if ($leftCol.length && $rightCol.length) {
|
||||
if ($leftCol.length || $rightCol.length) {
|
||||
$.each([$leftCol, $rightCol], function() {
|
||||
if ($(this).is(':empty')) {
|
||||
$(this)
|
||||
.addClass('empty-column')
|
||||
.siblings()
|
||||
.removeClass(function(index, css) {
|
||||
return (css.match(/(^|\s)col-\S+/g) || []).join(' ');
|
||||
})
|
||||
.addClass(columnCls);
|
||||
.replace_bootstrap_col_class(columnCls);
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
setThreeColumn: function(leftCol, centerCol, rightCol, mediumCls, fullCls) { //mediumCls and fullCls will apply to centerCol
|
||||
var $leftCol = $(leftCol);
|
||||
var $centerCol = $(centerCol);
|
||||
var $rightCol = $(rightCol);
|
||||
var mediumCls = mediumCls || 'col-sm-9';
|
||||
var mediumCls_complement = mediumCls.replace(/(^|\s+)col-[^-]+-([\d]+)/g,function(match, p1, p2){
|
||||
return match.replace(p2, 12 - Number(p2));
|
||||
});
|
||||
var fullCls = fullCls || 'col-sm-12';
|
||||
var asides_cols = [$leftCol, $rightCol];
|
||||
var asides_count = [$leftCol.not(':empty').length, $rightCol.not(':empty').length];
|
||||
var complemented_aside, empty_aside;
|
||||
if(asides_count[0] == 0 && asides_count[1] == 0){
|
||||
$centerCol.replace_bootstrap_col_class(fullCls);
|
||||
$.each(asides_cols, function() {
|
||||
$(this).addClass('empty-column').replace_bootstrap_col_class('');
|
||||
});
|
||||
}else{
|
||||
asides_cols.forEach(function(col , i){
|
||||
if(asides_count[i] == 0){
|
||||
empty_aside = col;
|
||||
}else{
|
||||
complemented_aside = col;
|
||||
}
|
||||
})
|
||||
if(empty_aside){
|
||||
empty_aside.addClass('empty-column').replace_bootstrap_col_class('');
|
||||
complemented_aside.replace_bootstrap_col_class(mediumCls_complement);
|
||||
$centerCol.replace_bootstrap_col_class(mediumCls);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
MobileMenu: function() {
|
||||
var $menu = $('[data-menu-level="0"]');
|
||||
|
@ -388,7 +423,7 @@
|
|||
orbit.sitemenuDropdown();
|
||||
orbit.goBackTop('top', 800);
|
||||
orbit.plugins.bullEye();
|
||||
orbit.setColumn('.left-column', '.right-column');
|
||||
orbit.setThreeColumn('.left-column','.center-column', '.right-column');
|
||||
|
||||
// 自適應網頁使用,當網頁載入時,如果視窗寬度小於768,就執行orbit.nav.setDropdown函數
|
||||
if ($(window).width() < 768) {
|
||||
|
@ -420,90 +455,9 @@
|
|||
}
|
||||
});
|
||||
|
||||
function forFreeGo() {
|
||||
// 幫有連結目的之所有a標籤加上title
|
||||
for(var i=0;i<$('a').length;i++){
|
||||
if($('a').eq(i).attr("href") != "" || $('a').eq(i).attr("href") != undefined ){
|
||||
var titlestr="";
|
||||
if($('a').eq(i).attr('target')=='_self')
|
||||
titlestr += '在本視窗開啟 ';
|
||||
else if($('a').eq(i).attr('target') == '_blank')
|
||||
titlestr += '在新視窗開啟 ';
|
||||
if($('a').eq(i).attr('title') == "" || $('a').eq(i).attr('title')==undefined && $('a').eq(i).html().search('</') == -1)
|
||||
titlestr += $('a').eq(i).html().trim();
|
||||
else if($('a').eq(i).attr('title') == "" || $('a').eq(i).attr('title') == undefined && $('a').eq(i).find('>span').length==1)
|
||||
titlestr += $('a').eq(i).find('>span').html().trim();
|
||||
else if($('a').eq(i).attr('title') == "" || $('a').eq(i).attr('title') == undefined){
|
||||
try{
|
||||
if($('a').eq(i).html().trim().split('>').length==2)
|
||||
titlestr += $('a').eq(i).html().trim().split('>')[1].trim();
|
||||
else if($('a').eq(i).html().trim().split('>').length==3)
|
||||
titlestr += $('a').eq(i).html().trim().split('>')[2].trim();
|
||||
}catch(e){};
|
||||
}
|
||||
else
|
||||
titlestr += $('a').eq(i).attr('title');
|
||||
if(titlestr.search('<img') != -1)
|
||||
titlestr = "這是一張照片";
|
||||
if(titlestr != "")
|
||||
$('a').eq(i).attr('title',titlestr);
|
||||
};
|
||||
};
|
||||
// 刪除banner-slide的空連結和空連結目標
|
||||
for(var i=0;i<$('.w-ba-banner__slide a').length;i++){
|
||||
if($('.w-ba-banner__slide a').eq(i).attr('href')=="")
|
||||
$('.w-ba-banner__slide a').eq(i).removeAttr('href');
|
||||
if($('.w-ba-banner__slide a').eq(i).attr('target') == "")
|
||||
$('.w-ba-banner__slide a').eq(i).removeAttr('target');
|
||||
};
|
||||
// 幫無標題之iframe加上title
|
||||
for(var i=0;i<$('iframe').length;i++)
|
||||
if($('iframe').eq(i).attr('title')=="" || $('iframe').eq(i).attr('title')== undefined ){
|
||||
if($('iframe').eq(i).attr('src').search('facebook') != -1 )
|
||||
$('iframe').eq(i).attr('title','facebook');
|
||||
else if($('iframe').eq(i).attr('src').search('google') != -1 )
|
||||
$('iframe').eq(i).attr('title','google');
|
||||
else if($('iframe').eq(i).attr('src').search('youtube') != -1 )
|
||||
$('iframe').eq(i).attr('title','youtube');
|
||||
else if($('iframe').eq(i).attr('src').search('twitframe') != -1 )
|
||||
$('iframe').eq(i).attr('title','twitter');
|
||||
else
|
||||
$('iframe').eq(i).attr('title','unknown');
|
||||
};
|
||||
// 刪除空的檔案室
|
||||
var archievelen = $('dd a.i-archive-files-item').length;
|
||||
for(i=archievelen-1;i>=0;i--)
|
||||
if($('dd a.i-archive-files-item').eq(i).html().trim()=="")
|
||||
$('dd a.i-archive-files-item').eq(i).parent('dd').remove();
|
||||
// 刪除具有空連結欄位的橫列
|
||||
for(var i = 0;i < $('*[data-list] tr td a').length ; i++)
|
||||
if($('*[data-list] tr td a').eq(i).html().trim()=="")
|
||||
$('*[data-list] tr td a').eq(i).parent('td').parent('tr').remove();
|
||||
// tab按鍵選到menu,會顯示下層的menu(為了符合無障礙)
|
||||
$('.nav-level-0>li>a').focus(function(e) {
|
||||
e.stopPropagation();
|
||||
$(this).parent().focus();
|
||||
if ($(this).parent().find('.nav-level-1').hasClass('show')) {
|
||||
} else {
|
||||
$('.nav-level-1').removeClass('show');
|
||||
$(this).parent().find('.nav-level-1').addClass('show');
|
||||
}
|
||||
});
|
||||
$('.nav-level-1>li>a').focus(function(e) {
|
||||
e.stopPropagation();
|
||||
if ($(this).parent().find('.nav-level-2').hasClass('show')) {
|
||||
}else{
|
||||
$('.nav-level-2').removeClass('show');
|
||||
$(this).parent().find('.nav-level-2').addClass('show');
|
||||
}
|
||||
});
|
||||
$('show').parent('li').focus();
|
||||
}
|
||||
forFreeGo();
|
||||
|
||||
//背景widget設定
|
||||
if ( location.href.search('editmode=on') != -1 ) {
|
||||
$('.background').css('z-index','0');
|
||||
$('.background').css({'z-index': '0', 'position': 'relative'});
|
||||
} else {
|
||||
$('.background').css('z-index','-1');
|
||||
};
|
||||
|
@ -519,33 +473,10 @@
|
|||
});
|
||||
};
|
||||
|
||||
//公告頁籤
|
||||
function annc_widget_nav() {
|
||||
$('.tab_nav').nextAll().addClass('tab_content');
|
||||
$('.tab_content').css("display","none");
|
||||
$('.tab_content').eq(0).css('display', 'block');
|
||||
|
||||
var num = $('.tab_nav li').length;
|
||||
$('.tab_content').eq(num).css('display', 'block');
|
||||
$('.tab_content').eq(num).nextAll().css('display', 'block');
|
||||
|
||||
$('.tab_nav li').off('click').on('click',function() {
|
||||
$('.tab_nav li').removeClass('active');
|
||||
$(this).addClass('active');
|
||||
var fa = $(this).index();
|
||||
|
||||
$('.tab_content').attr('style','');
|
||||
$('.tab_content').css("display","none");
|
||||
$('.tab_content').eq(fa).css('display','block');
|
||||
var num = $('.tab_nav li').length;
|
||||
$('.tab_content').eq(num).css('display', 'block');
|
||||
$('.tab_content').eq(num).nextAll().css('display', 'block');
|
||||
});
|
||||
|
||||
var url = window.location.search;
|
||||
if (url == "?editmode=on") {
|
||||
$('.tab_content').css({'position': 'relative','display':'block'});
|
||||
}
|
||||
}
|
||||
}
|
||||
annc_widget_nav();
|
||||
|
||||
|
|
|
@ -18,7 +18,8 @@
|
|||
<section class="page-content-box col-sm-3" data-pp="903"></section>
|
||||
</div>
|
||||
<div class="row">
|
||||
<section class="layout-content-box left-column col-sm-9">
|
||||
<aside class="layout-content-box left-column col-sm-3" data-pp="802"></aside>
|
||||
<section class="layout-content-box center-column col-sm-6">
|
||||
<div class="extra" data-pp="600"></div>
|
||||
<main id="main-content" class="main-content" data-content="true">
|
||||
<%= yield %>
|
||||
|
|
Loading…
Reference in New Issue