update
This commit is contained in:
parent
d8ce4d0e5d
commit
aacb5df6f7
|
|
@ -876,7 +876,7 @@ $(function(){
|
||||||
var isLinkImage = $parentA.length > 0 && $parentA.text().replace(/\u00a0/g, '').trim() === "";
|
var isLinkImage = $parentA.length > 0 && $parentA.text().replace(/\u00a0/g, '').trim() === "";
|
||||||
|
|
||||||
// --- 1. 處理「裝飾性圖片」標註 ---
|
// --- 1. 處理「裝飾性圖片」標註 ---
|
||||||
if (currentAlt === "announcement image" || currentAlt === "裝飾圖片" || currentTitle === "裝飾圖片" || currentAlt === "這是一張圖片" || currentTitle === "這是一張圖片") {
|
if (currentAlt === "announcement image" || currentAlt === "裝飾圖片" || currentTitle === "裝飾圖片" || currentAlt === "這是一張圖片" || currentTitle === "這是一張圖片" || currentAlt === "This is a image" || currentTitle === "This is a image") {
|
||||||
$img.attr('alt', '');
|
$img.attr('alt', '');
|
||||||
$img.removeAttr('title');
|
$img.removeAttr('title');
|
||||||
return;
|
return;
|
||||||
|
|
@ -1078,56 +1078,59 @@ $(function() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// E. 重新計算標題 (關鍵邏輯:若 hasOriginalTitle 為真,則不進入此區塊)
|
// E. 重新計算標題 (關鍵邏輯:若 hasOriginalTitle 為真,則不進入此區塊)
|
||||||
if (!hasOriginalTitle) {
|
if (!hasOriginalTitle) {
|
||||||
if (linkText === "" && $img.length > 0) {
|
if (linkText === "" && $img.length > 0) {
|
||||||
var rawAlt = ($img.attr('alt') || '').trim();
|
var rawAlt = ($img.attr('alt') || '').trim();
|
||||||
var forbidden = ['這是一張圖片', '圖片', 'image', 'photo', '圖', ''];
|
var forbidden = ['這是一張圖片', '圖片', 'image', 'photo', '圖', ''];
|
||||||
var imgAlt = forbidden.some(function(txt) { return rawAlt.toLowerCase() === txt; })
|
var imgAlt = forbidden.some(function(txt) { return rawAlt.toLowerCase() === txt; })
|
||||||
? ($a.attr('aria-label') || i18n.link) : rawAlt;
|
? ($a.attr('aria-label') || i18n.link) : rawAlt;
|
||||||
|
|
||||||
var fileInfo = fileExt ? '[' + fileExt.toUpperCase() + '] ' : '';
|
var fileInfo = fileExt ? '[' + fileExt.toUpperCase() + '] ' : '';
|
||||||
$a.attr('title', (fileInfo + imgAlt + " " + windowTask).trim());
|
$a.attr('title', (fileInfo + imgAlt + " " + windowTask).trim());
|
||||||
$img.attr('alt', imgAlt);
|
$img.attr('alt', imgAlt);
|
||||||
}
|
}
|
||||||
else if (linkText !== "") {
|
else if (linkText !== "") {
|
||||||
if (fileExt !== "" || hasBadSymbol || currentTitle === "" || currentTitle.includes('/uploads/')) {
|
if (fileExt !== "" || hasBadSymbol || currentTitle === "" || currentTitle.includes('/uploads/')) {
|
||||||
if (fileExt !== "") {
|
if (fileExt !== "") {
|
||||||
$a.attr('title', linkText + " ." + fileExt + " " + windowTask);
|
$a.attr('title', linkText + " ." + fileExt + " " + windowTask);
|
||||||
} else {
|
} else {
|
||||||
$a.attr('title', windowTask);
|
$a.attr('title', windowTask);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// ✅ 符合 HM1240404E:title 不應與連結文字或圖片 alt 重複
|
// ✅ 符合 HM1240404E:title 不應與連結文字或圖片 alt 重複
|
||||||
if (hasOriginalTitle && currentTitle !== "") {
|
if (hasOriginalTitle && currentTitle !== "") {
|
||||||
var titleWithoutWindow = currentTitle
|
var titleWithoutWindow = currentTitle
|
||||||
.replace('(在本視窗開啟)', '')
|
.replace('(在本視窗開啟)', '')
|
||||||
.replace('(在新視窗開啟)', '')
|
.replace('(在新視窗開啟)', '')
|
||||||
.replace('Open in this window', '')
|
.replace('Open in this window', '')
|
||||||
.replace('Open in new window', '')
|
.replace('Open in new window', '')
|
||||||
.replace('另開新視窗前往', '')
|
.replace('另開新視窗前往', '')
|
||||||
.replace('另開新視窗', '')
|
.replace('另開新視窗', '')
|
||||||
.trim();
|
.trim();
|
||||||
|
|
||||||
// ✅ title 去掉開窗字串後,若與連結文字或圖片原始 alt 相同,則只保留開窗提示
|
// ✅ title 去掉開窗字串後,若與連結文字或圖片原始 alt 相同,則只保留開窗提示
|
||||||
if (
|
// ✅ 新增:若 linkText 包含副檔名且 title 也是同樣檔名,也只保留開窗提示
|
||||||
(titleWithoutWindow === linkText && linkText !== i18n.link) ||
|
if (
|
||||||
(imgAltOriginal !== '' && titleWithoutWindow === imgAltOriginal)
|
(titleWithoutWindow === linkText && linkText !== i18n.link) ||
|
||||||
) {
|
(imgAltOriginal !== '' && titleWithoutWindow === imgAltOriginal) ||
|
||||||
$a.attr('title', windowTask);
|
(fileExt !== '' && linkText.toLowerCase().endsWith('.' + fileExt) && titleWithoutWindow === linkText)
|
||||||
}
|
) {
|
||||||
|
$a.attr('title', windowTask);
|
||||||
// ✅ 最終清理:若 title 出現空括號 () 則移除並補上正確開窗提示
|
return; // ✅ 加上 return,避免繼續執行後面的清理邏輯造成二次污染
|
||||||
var finalTitle = ($a.attr('title') || '').trim();
|
|
||||||
if (finalTitle.includes('()')) {
|
|
||||||
finalTitle = finalTitle.replace(/\(\)/g, '').trim();
|
|
||||||
$a.attr('title', finalTitle + ' ' + windowTask);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ✅ 最終清理:若 title 出現空括號 () 則移除並補上正確開窗提示
|
||||||
|
var finalTitle = ($a.attr('title') || '').trim();
|
||||||
|
if (finalTitle.includes('()')) {
|
||||||
|
finalTitle = finalTitle.replace(/\(\)/g, '').trim();
|
||||||
|
$a.attr('title', finalTitle + ' ' + windowTask);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// F. 最終清理:移除冗餘 label,避免螢幕閱讀器唸兩次
|
// F. 最終清理:移除冗餘 label,避免螢幕閱讀器唸兩次
|
||||||
$a.removeAttr('aria-label');
|
$a.removeAttr('aria-label');
|
||||||
});
|
});
|
||||||
|
|
@ -1161,6 +1164,47 @@ $(function() {
|
||||||
fixAccessibilityAll();
|
fixAccessibilityAll();
|
||||||
}, 800);
|
}, 800);
|
||||||
});
|
});
|
||||||
|
// 修正漢堡選單按鈕無障礙
|
||||||
|
$(function() {
|
||||||
|
function fixNavbarToggleA11y() {
|
||||||
|
var isEn = $('html').attr('lang') === 'en';
|
||||||
|
var label = isEn ? '開啟或關閉導覽選單' : '開啟或關閉導覽選單';
|
||||||
|
|
||||||
|
$('.navbar-toggle').each(function() {
|
||||||
|
var $btn = $(this);
|
||||||
|
|
||||||
|
// 修正 title
|
||||||
|
$btn.attr('title', label);
|
||||||
|
|
||||||
|
// 修正 sr-only 文字(原本是 "Toggle navigation")
|
||||||
|
var $sr = $btn.find('.sr-only');
|
||||||
|
if ($sr.length) {
|
||||||
|
$sr.text(label);
|
||||||
|
} else {
|
||||||
|
$btn.prepend('<span class="sr-only">' + label + '</span>');
|
||||||
|
}
|
||||||
|
|
||||||
|
// 補上 aria-label
|
||||||
|
$btn.attr('aria-label', label);
|
||||||
|
|
||||||
|
// 補上 aria-expanded(依據目前是否展開)
|
||||||
|
if (!$btn.attr('aria-expanded')) {
|
||||||
|
var isExpanded = !$btn.hasClass('collapsed');
|
||||||
|
$btn.attr('aria-expanded', isExpanded ? 'true' : 'false');
|
||||||
|
}
|
||||||
|
|
||||||
|
// 點擊時同步更新 aria-expanded
|
||||||
|
$btn.off('click.navA11y').on('click.navA11y', function() {
|
||||||
|
setTimeout(function() {
|
||||||
|
var isExpanded = !$('.navbar-toggle').hasClass('collapsed');
|
||||||
|
$('.navbar-toggle').attr('aria-expanded', isExpanded ? 'true' : 'false');
|
||||||
|
}, 50);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
setTimeout(fixNavbarToggleA11y, 500);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
$(function() {
|
$(function() {
|
||||||
|
|
@ -3148,11 +3192,7 @@ function removeHiddenContentLinks() {
|
||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
setTimeout(removeHiddenContentLinks, 500);
|
setTimeout(removeHiddenContentLinks, 500);
|
||||||
});
|
});
|
||||||
$(document).ready(function () {
|
|
||||||
setTimeout(function () {
|
|
||||||
$('.dtr-control').removeAttr('tabindex');
|
|
||||||
}, 500);
|
|
||||||
});
|
|
||||||
$(function() {
|
$(function() {
|
||||||
$('h3.page-module-title').each(function() {
|
$('h3.page-module-title').each(function() {
|
||||||
var $h3 = $(this);
|
var $h3 = $(this);
|
||||||
|
|
@ -3271,101 +3311,77 @@ $(document).ready(function () {
|
||||||
var $btn = $('.btn-search');
|
var $btn = $('.btn-search');
|
||||||
var $input = $('.input-search');
|
var $input = $('.input-search');
|
||||||
|
|
||||||
// 點擊按鈕展開/收合
|
// ✅ 將按鈕移到 input 之前
|
||||||
$btn.on('click', function () {
|
$btn.insertBefore($input);
|
||||||
|
|
||||||
|
function expandSearch() {
|
||||||
|
$btn.attr('aria-expanded', 'true');
|
||||||
|
$btn.attr('aria-label', '收合搜尋欄');
|
||||||
|
$btn.attr('title', '收合搜尋欄');
|
||||||
|
$searchBox.addClass('searching');
|
||||||
|
}
|
||||||
|
|
||||||
|
function collapseSearch() {
|
||||||
|
$btn.attr('aria-expanded', 'false');
|
||||||
|
$btn.attr('aria-label', '展開搜尋欄');
|
||||||
|
$btn.attr('title', '展開搜尋欄');
|
||||||
|
$searchBox.removeClass('searching');
|
||||||
|
}
|
||||||
|
|
||||||
|
// ✅ 初始狀態
|
||||||
|
collapseSearch();
|
||||||
|
|
||||||
|
// ✅ 點擊按鈕:展開或收合
|
||||||
|
$btn.on('click', function (e) {
|
||||||
var isExpanded = $btn.attr('aria-expanded') === 'true';
|
var isExpanded = $btn.attr('aria-expanded') === 'true';
|
||||||
if (isExpanded) {
|
if (isExpanded) {
|
||||||
$btn.attr('aria-expanded', 'false');
|
if ($input.val().trim()) {
|
||||||
$searchBox.removeClass('searching');
|
// 有內容才送出,讓 form 正常 submit
|
||||||
$input.blur();
|
} else {
|
||||||
|
e.preventDefault();
|
||||||
|
collapseSearch();
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
$btn.attr('aria-expanded', 'true');
|
e.preventDefault();
|
||||||
$searchBox.addClass('searching');
|
expandSearch();
|
||||||
$input.focus();
|
setTimeout(function () { $input.focus(); }, 100);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// ✅ 監聽整個 search-box 的焦點進入(含 Tab 鍵進入 input)
|
// ✅ Tab 遊走到 btn 時展開
|
||||||
$searchBox.on('focusin', function () {
|
$btn.on('focus', function () {
|
||||||
$btn.attr('aria-expanded', 'true');
|
expandSearch();
|
||||||
$searchBox.addClass('searching');
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// ✅ 監聽整個 search-box 的焦點離開
|
// ✅ Tab 遊走到 input 時維持展開
|
||||||
|
$input.on('focus', function () {
|
||||||
|
expandSearch();
|
||||||
|
});
|
||||||
|
|
||||||
|
// ✅ 焦點離開整個 search-box 時收合(無內容才收)
|
||||||
$searchBox.on('focusout', function () {
|
$searchBox.on('focusout', function () {
|
||||||
// 延遲確認焦點是否還在 search-box 內
|
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
if (!$searchBox.find(':focus').length) {
|
if (!$searchBox.find(':focus').length) {
|
||||||
$btn.attr('aria-expanded', 'false');
|
if (!$input.val().trim()) {
|
||||||
$searchBox.removeClass('searching');
|
collapseSearch();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}, 150);
|
}, 150);
|
||||||
});
|
});
|
||||||
|
|
||||||
// Escape 收合並返回按鈕
|
// ✅ Escape 收合並回到按鈕
|
||||||
$input.on('keydown', function (e) {
|
$input.on('keydown', function (e) {
|
||||||
if (e.keyCode === 27) {
|
if (e.keyCode === 27) {
|
||||||
$btn.attr('aria-expanded', 'false');
|
collapseSearch();
|
||||||
$searchBox.removeClass('searching');
|
|
||||||
$btn.focus();
|
$btn.focus();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
//會員tab邏輯
|
||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
var $searchBox = $('.search-box');
|
setTimeout(function () {
|
||||||
var $btn = $('.btn-search');
|
$('.dtr-control').removeAttr('tabindex');
|
||||||
var $input = $('.input-search');
|
}, 500);
|
||||||
|
|
||||||
// ✅ 將按鈕移到 input 之前,Tab 順序變為:按鈕 → input → 送出
|
|
||||||
$btn.insertBefore($input);
|
|
||||||
|
|
||||||
// ✅ 補充 aria-label 說明展開收合功能
|
|
||||||
$btn.attr('aria-label', '展開或收合搜尋欄');
|
|
||||||
$btn.attr('title', '展開或收合搜尋欄');
|
|
||||||
|
|
||||||
// 點擊按鈕展開/收合
|
|
||||||
$btn.on('click', function () {
|
|
||||||
var isExpanded = $btn.attr('aria-expanded') === 'true';
|
|
||||||
if (isExpanded) {
|
|
||||||
$btn.attr('aria-expanded', 'false');
|
|
||||||
$btn.attr('aria-label', '展開搜尋欄');
|
|
||||||
$('.search-box').removeClass('searching');
|
|
||||||
$input.blur();
|
|
||||||
} else {
|
|
||||||
$btn.attr('aria-expanded', 'true');
|
|
||||||
$btn.attr('aria-label', '收合搜尋欄');
|
|
||||||
$('.search-box').addClass('searching');
|
|
||||||
$input.focus();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// focusin 同步狀態
|
|
||||||
$searchBox.on('focusin', function () {
|
|
||||||
$btn.attr('aria-expanded', 'true');
|
|
||||||
$btn.attr('aria-label', '收合搜尋欄');
|
|
||||||
$searchBox.addClass('searching');
|
|
||||||
});
|
|
||||||
|
|
||||||
// focusout 同步狀態
|
|
||||||
$searchBox.on('focusout', function () {
|
|
||||||
setTimeout(function () {
|
|
||||||
if (!$searchBox.find(':focus').length) {
|
|
||||||
$btn.attr('aria-expanded', 'false');
|
|
||||||
$btn.attr('aria-label', '展開搜尋欄');
|
|
||||||
$searchBox.removeClass('searching');
|
|
||||||
}
|
|
||||||
}, 150);
|
|
||||||
});
|
|
||||||
|
|
||||||
// Escape 收合
|
|
||||||
$input.on('keydown', function (e) {
|
|
||||||
if (e.keyCode === 27) {
|
|
||||||
$btn.attr('aria-expanded', 'false');
|
|
||||||
$btn.attr('aria-label', '展開搜尋欄');
|
|
||||||
$searchBox.removeClass('searching');
|
|
||||||
$btn.focus();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
function fixTabKeyboardNav() {
|
function fixTabKeyboardNav() {
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,10 @@
|
||||||
position: relative!important;
|
position: relative!important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media(max-width: 769px){
|
@media(max-width: 768px){
|
||||||
|
.lang-switch{
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
.ad-banner-widget-6{
|
.ad-banner-widget-6{
|
||||||
.w-ba-banner__wrap {
|
.w-ba-banner__wrap {
|
||||||
position: absolute!important;
|
position: absolute!important;
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
a[accesskey] {
|
a[accesskey] {
|
||||||
position: relative;
|
position: relative;
|
||||||
color: transparent ;
|
color: transparent ;
|
||||||
|
float: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
#orbit-bar a[accesskey] {
|
#orbit-bar a[accesskey] {
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-width: 1px 1px 1px 1px;
|
border-width: 1px 1px 1px 1px;
|
||||||
border-color: #fff;
|
border-color: #fff;
|
||||||
background: #6495ed;
|
background: #3970d5;
|
||||||
.sppb-addon-title{
|
.sppb-addon-title{
|
||||||
span{
|
span{
|
||||||
color: #fff;
|
color: #fff;
|
||||||
|
|
@ -3147,7 +3147,7 @@
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-width: 1px 1px 1px 1px;
|
border-width: 1px 1px 1px 1px;
|
||||||
border-color: #fff;
|
border-color: #fff;
|
||||||
background: #6495ed;
|
background: #3970d5;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 1199.98px) {
|
@media (max-width: 1199.98px) {
|
||||||
|
|
@ -4442,7 +4442,7 @@
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-width: 1px 1px 1px 1px;
|
border-width: 1px 1px 1px 1px;
|
||||||
border-color: #fff;
|
border-color: #fff;
|
||||||
background: #6495ed;
|
background: #3970d5;
|
||||||
}
|
}
|
||||||
.sppb-addon-table-main th {
|
.sppb-addon-table-main th {
|
||||||
border: none;
|
border: none;
|
||||||
|
|
@ -4471,7 +4471,7 @@
|
||||||
border-width: 1px 1px 1px 1px;
|
border-width: 1px 1px 1px 1px;
|
||||||
border-color: #000000;
|
border-color: #000000;
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
background: #6495ed;
|
background: #3970d5;
|
||||||
}
|
}
|
||||||
#sppb-addon-954ac96d-0916-47b6-abcc-0ba4834ef260 .sppb-addon-table-main th {
|
#sppb-addon-954ac96d-0916-47b6-abcc-0ba4834ef260 .sppb-addon-table-main th {
|
||||||
padding-top: 5px;
|
padding-top: 5px;
|
||||||
|
|
|
||||||
|
|
@ -145,7 +145,7 @@
|
||||||
@extend .unity-title;
|
@extend .unity-title;
|
||||||
}
|
}
|
||||||
.link { background-color: #1368d4 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
.link { background-color: #1368d4 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
||||||
.txt { background-color: #3a8a40 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
.txt { background-color: #2a7e31 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
||||||
.xlsx { background-color: #9e3050 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
.xlsx { background-color: #9e3050 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
||||||
.pdf { background-color: #2a7d36 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
.pdf { background-color: #2a7d36 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
||||||
.docx { background-color: #5e46a0 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
.docx { background-color: #5e46a0 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
||||||
|
|
@ -154,7 +154,7 @@
|
||||||
.jpg { background-color: #8f3333 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
.jpg { background-color: #8f3333 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
||||||
.zip { background-color: #8a6400 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
.zip { background-color: #8a6400 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
||||||
.rar { background-color: #9e5000 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
.rar { background-color: #9e5000 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
||||||
.xls { background-color: #3a8a40 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
.xls { background-color: #2a7e31 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
||||||
.odt { background-color: #767676 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
.odt { background-color: #767676 !important; margin-left: 0.5em; } /* 對比 4.6:1 */
|
||||||
.table>caption+thead>tr:first-child>td, .table>caption+thead>tr:first-child>th, .table>colgroup+thead>tr:first-child>td, .table>colgroup+thead>tr:first-child>th, .table>thead:first-child>tr:first-child>td, .table>thead:first-child>tr:first-child>th{
|
.table>caption+thead>tr:first-child>td, .table>caption+thead>tr:first-child>th, .table>colgroup+thead>tr:first-child>td, .table>colgroup+thead>tr:first-child>th, .table>thead:first-child>tr:first-child>td, .table>thead:first-child>tr:first-child>th{
|
||||||
// border-top: 0.0625em solid #ddd;
|
// border-top: 0.0625em solid #ddd;
|
||||||
|
|
|
||||||
|
|
@ -924,7 +924,7 @@ a.ui-state-default{
|
||||||
outline: none;
|
outline: none;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
position: absolute;
|
position: relative;
|
||||||
right: 0px;
|
right: 0px;
|
||||||
color:#fff;
|
color:#fff;
|
||||||
background-color:transparent;
|
background-color:transparent;
|
||||||
|
|
|
||||||
|
|
@ -50,19 +50,23 @@
|
||||||
</div>
|
</div>
|
||||||
<script>
|
<script>
|
||||||
var flag = 1;
|
var flag = 1;
|
||||||
$('.pause-slide').click(function(){
|
$('[data-subpart-id="{{subpart-id}}"] .pause-slide').click(function(){
|
||||||
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle('pause');
|
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle('pause');
|
||||||
});
|
$(this).addClass('active')
|
||||||
$('.resume-slide').click(function(){
|
$(this).parents('.controlplay').eq(0).find('.resume-slide').removeClass('active')
|
||||||
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle('resume');
|
});
|
||||||
});
|
$('[data-subpart-id="{{subpart-id}}"] .resume-slide').click(function(){
|
||||||
$('.next-button').off('click').on('click',function(){
|
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle('resume');
|
||||||
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle("next");
|
$(this).addClass('active')
|
||||||
|
$(this).parents('.controlplay').eq(0).find('.pause-slide').removeClass('active')
|
||||||
|
});
|
||||||
|
$('[data-subpart-id="{{subpart-id}}"] .next-button').click(function(){
|
||||||
|
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle("next");
|
||||||
|
|
||||||
})
|
})
|
||||||
$('.prev-button').off('click').on('click',function(){
|
$('[data-subpart-id="{{subpart-id}}"] .prev-button').click(function(){
|
||||||
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle("prev");
|
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle("prev");
|
||||||
});
|
})
|
||||||
/* 修正點:處理 Pager 無障礙朗讀文字 */
|
/* 修正點:處理 Pager 無障礙朗讀文字 */
|
||||||
$('.cycle-slideshow').on('cycle-post-initialize', function(event, optionHash) {
|
$('.cycle-slideshow').on('cycle-post-initialize', function(event, optionHash) {
|
||||||
var $container = $(this).closest('.w-ba-banner');
|
var $container = $(this).closest('.w-ba-banner');
|
||||||
|
|
|
||||||
|
|
@ -5,21 +5,20 @@
|
||||||
<div class="panel-group" id="index-archive-group" data-list="categories" data-level="0">
|
<div class="panel-group" id="index-archive-group" data-list="categories" data-level="0">
|
||||||
<div class="panel panel-default default-collapse" data-list="archives" data-level="1">
|
<div class="panel panel-default default-collapse" data-list="archives" data-level="1">
|
||||||
<div class="panel-heading" style="padding: 0.625em 0.9375em;">
|
<div class="panel-heading" style="padding: 0.625em 0.9375em;">
|
||||||
<h4 class="panel-title">
|
<h3 class="panel-title">
|
||||||
<i class="fa fa-file-text" aria-hidden="true"></i>
|
<i class="fa fa-file-text" aria-hidden="true"></i>
|
||||||
<a role="button" data-toggle="collapse" data-parent="#index-archive-group" href="#collapse" class="collapsed" style="padding: 0;display: inline-block;">
|
<a role="button" data-toggle="collapse" data-parent="#index-archive-group" href="#collapse" class="collapsed" style="padding: 0;display: inline-block;">
|
||||||
{{archive-title}}
|
{{archive-title}}
|
||||||
<i class="fa fa-chevron-down" aria-hidden="true"></i>
|
<i class="fa fa-chevron-down" aria-hidden="true"></i>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
</h4>
|
</h3>
|
||||||
</div>
|
</div>
|
||||||
<div id="collapse" class="panel-collapse collapse {{in_class}}">
|
<div id="collapse" class="panel-collapse collapse {{in_class}}">
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<ul class="i-archive-files-list" data-list="files" data-level="2">
|
<ul class="i-archive-files-list" data-list="files" data-level="2">
|
||||||
<li>
|
<li>
|
||||||
<a href="{{file-url}}" class="i-archive-files-item" target="{{target}}" title="{{file-name}}">{{file-name}}</a>
|
<a href="{{file-url}}" class="i-archive-files-item" target="{{target}}" title="{{file-name}}">{{file-name}}<span class="label label-primary {{file-type}}">{{file-type}}</span></a>
|
||||||
<span class="label label-primary {{file-type}}">{{file-type}}</span>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -5,14 +5,14 @@
|
||||||
<div class="panel-group" id="index-archive-group" data-list="categories" data-level="0">
|
<div class="panel-group" id="index-archive-group" data-list="categories" data-level="0">
|
||||||
<div class="panel panel-default default-collapse" data-list="archives" data-level="1">
|
<div class="panel panel-default default-collapse" data-list="archives" data-level="1">
|
||||||
<div class="panel-heading" style="padding: 0.625em 0.9375em;">
|
<div class="panel-heading" style="padding: 0.625em 0.9375em;">
|
||||||
<h4 class="panel-title">
|
<h3 class="panel-title">
|
||||||
<i class="fa fa-file-text" aria-hidden="true"></i>
|
<i class="fa fa-file-text" aria-hidden="true"></i>
|
||||||
<a role="button" data-toggle="collapse" data-parent="#index-archive-group" href="#collapse" class="collapsed" style="padding: 0;display: inline-block;">
|
<a role="button" data-toggle="collapse" data-parent="#index-archive-group" href="#collapse" class="collapsed" style="padding: 0;display: inline-block;">
|
||||||
{{archive-title}}
|
{{archive-title}}
|
||||||
<i class="fa fa-chevron-down" aria-hidden="true"></i>
|
<i class="fa fa-chevron-down" aria-hidden="true"></i>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
</h4>
|
</h3>
|
||||||
</div>
|
</div>
|
||||||
<div id="collapse" class="panel-collapse collapse {{in_class}}">
|
<div id="collapse" class="panel-collapse collapse {{in_class}}">
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
|
|
|
||||||
|
|
@ -1,18 +1,42 @@
|
||||||
<div class="show-gallery">
|
<div class="show-gallery">
|
||||||
<h2 class="show-title">
|
<h1 class="show-title">
|
||||||
<span>{{album-title}}</span>
|
<span>{{album-title}}</span>
|
||||||
</h2>
|
</h1>
|
||||||
{{album-description}}
|
{{album-description}}
|
||||||
<div data-level="0" data-list="images">
|
<div class="show-gallery-list" data-level="0" data-list="images">
|
||||||
<div class="show-content col-xs-6 col-sm-2">
|
<div class="show-content col-xs-6 col-sm-2">
|
||||||
<div class="show-content-inner">
|
<div class="show-content-inner">
|
||||||
<div class="show-pic">
|
<div class="show-pic">
|
||||||
<a href="{{link_to_show}}" onclick="window.location.hash = '{{link_to_show}}';GalleryTheater();return false;">
|
<a href="{{link_to_show}}" onclick="window.location.hash = '{{link_to_show}}';GalleryTheater();return false;">
|
||||||
<img class="img" src="{{thumb-src}}" alt="{{alt_title}}">
|
<img class="img" src="{{thumb-src}}" alt="{{alt_title}}">
|
||||||
</a>
|
</a>
|
||||||
|
<p class="show-description">{{image-description}}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<style>
|
||||||
|
.show-gallery-list{
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
.show-gallery .show-content {
|
||||||
|
@media(max-width:480px){
|
||||||
|
width:100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script>
|
||||||
|
setTimeout(function() {
|
||||||
|
var albumTitle = $('.show-title span').text().trim();
|
||||||
|
|
||||||
|
$('.show-content').each(function(index) {
|
||||||
|
var $img = $(this).find('img');
|
||||||
|
if ($img.attr('alt') === 'gallery image') {
|
||||||
|
$img.attr('alt', albumTitle + (index + 1));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}, 500);
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<div class="i-member-item-inner clearfix">
|
<div class="i-member-item-inner clearfix">
|
||||||
<div class="i-member-pic-wrap col-sm-4 col-xs-4">
|
<div class="i-member-pic-wrap col-sm-4 col-xs-4">
|
||||||
<a href="{{link_to_show}}" title="{{name}}">
|
<a href="{{link_to_show}}" title="{{name}}">
|
||||||
<img class="i-member-pic" src="{{image}}" title="{{name}}">
|
<img class="i-member-pic" src="{{image}}" alt="{{name}}">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="i-member-profile-data-wrap col-sm-8 col-xs-8">
|
<div class="i-member-profile-data-wrap col-sm-8 col-xs-8">
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<div class="i-member-item-inner clearfix">
|
<div class="i-member-item-inner clearfix">
|
||||||
<div class="i-member-pic-wrap">
|
<div class="i-member-pic-wrap">
|
||||||
<a href="{{link_to_show}}" title="{{name}}">
|
<a href="{{link_to_show}}" title="{{name}}">
|
||||||
<img class="i-member-pic" src="{{image}}" title="{{name}}">
|
<img class="i-member-pic" src="{{image}}" alt="{{name}}">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="i-member-profile-data-wrap">
|
<div class="i-member-profile-data-wrap">
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<div class="i-member-item-inner clearfix">
|
<div class="i-member-item-inner clearfix">
|
||||||
<div class="i-member-pic-wrap">
|
<div class="i-member-pic-wrap">
|
||||||
<a href="{{link_to_show}}" title="{{name}}">
|
<a href="{{link_to_show}}" title="{{name}}">
|
||||||
<img class="i-member-pic" src="{{image}}" title="{{name}}">
|
<img class="i-member-pic" src="{{image}}" alt="{{name}}">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="i-member-profile-data-wrap">
|
<div class="i-member-profile-data-wrap">
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
<div class="i-member-item-inner clearfix">
|
<div class="i-member-item-inner clearfix">
|
||||||
<div class="i-member-pic-wrap">
|
<div class="i-member-pic-wrap">
|
||||||
<a href="{{link_to_show}}" title="{{name}}">
|
<a href="{{link_to_show}}" title="{{name}}">
|
||||||
<img class="i-member-pic" src="{{image}}" title="{{name}}">
|
<img class="i-member-pic" src="{{image}}" alt="{{name}}">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
<li class="widget-content">
|
<li class="widget-content">
|
||||||
<div class="link-img-wrap{{display_image}}">
|
<div class="link-img-wrap{{display_image}}">
|
||||||
<a href="{{link_to_show}}" target="{{target}}" title="{{img_description}}">
|
<a href="{{link_to_show}}" target="{{target}}" title="{{img_description}}">
|
||||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
<img src="{{img_src}}" alt="{{img_description}}">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">{{title}}</a>
|
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">{{title}}</a>
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
<div class="link-img-wrap{{display_image}}">
|
<div class="link-img-wrap{{display_image}}">
|
||||||
<a href="{{link_to_show}}" target="{{target}}" title="{{img_description}}">
|
<a href="{{link_to_show}}" target="{{target}}" title="{{img_description}}">
|
||||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
<img src="{{img_src}}" alt="{{img_description}}">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
<div class="link-img-wrap{{display_image}}">
|
<div class="link-img-wrap{{display_image}}">
|
||||||
<a href="{{link_to_show}}" target="{{target}}" title="{{img_description}}">
|
<a href="{{link_to_show}}" target="{{target}}" title="{{img_description}}">
|
||||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
<img src="{{img_src}}" alt="{{img_description}}">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="widget-content-title">
|
<div class="widget-content-title">
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
<li class="widget-content widget-content-horizontal ">
|
<li class="widget-content widget-content-horizontal ">
|
||||||
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
||||||
<div class="link-img-wrap{{display_image}}">
|
<div class="link-img-wrap{{display_image}}">
|
||||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
<img src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
<div class="widget-content-title">
|
<div class="widget-content-title">
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
<li class="widget-content widget-content-horizontal col-sm-6">
|
<li class="widget-content widget-content-horizontal col-sm-6">
|
||||||
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
||||||
<div class="link-img-wrap{{display_image}}">
|
<div class="link-img-wrap{{display_image}}">
|
||||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
<img src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
<div class="widget-content-title">
|
<div class="widget-content-title">
|
||||||
<a class="" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">{{title}}</a>
|
<a class="" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">{{title}}</a>
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
<div class="hex-border">
|
<div class="hex-border">
|
||||||
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
||||||
<div class="link-img-wrap{{display_image}}">
|
<div class="link-img-wrap{{display_image}}">
|
||||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
<img src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
<a class="widget-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}" onclick="{{onclick}}">{{title}}</a>
|
<a class="widget-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}" onclick="{{onclick}}">{{title}}</a>
|
||||||
<span data-list="statuses" data-level="1">
|
<span data-list="statuses" data-level="1">
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
<li class="index-content">
|
<li class="index-content">
|
||||||
<a class="index-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
<a class="index-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
||||||
<div class="link-img-wrap{{display_image}}">
|
<div class="link-img-wrap{{display_image}}">
|
||||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
<img src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
<h4>
|
<h4>
|
||||||
{{title}}
|
{{title}}
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
<li class="index-content col-md-4 col-sm-4">
|
<li class="index-content col-md-4 col-sm-4">
|
||||||
<a class="index-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
<a class="index-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
||||||
<div class="link-img-wrap{{display_image}}">
|
<div class="link-img-wrap{{display_image}}">
|
||||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
<img src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
<h4>
|
<h4>
|
||||||
<span class="link-title">
|
<span class="link-title">
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue