This commit is contained in:
parent
d4f1cf5154
commit
ef6c4d64d3
|
|
@ -12,7 +12,7 @@
|
|||
});
|
||||
|
||||
function handleNavMove() {
|
||||
var windowWidth = window.innerWidth;
|
||||
var windowWidth = window.innerWidth;ㄑ
|
||||
|
||||
if (windowWidth > 768) {
|
||||
if ($signLanguageBox.length && $signLanguageBox.find('[accesskey="U"], [accesskey="W"]').length === 0) {
|
||||
|
|
@ -630,7 +630,7 @@
|
|||
}
|
||||
});
|
||||
if (document.documentElement.lang === 'zh_tw') {
|
||||
document.documentElement.lang = 'zh-Hant';
|
||||
document.documentElement.lang = 'zh-Hant-TW';
|
||||
}
|
||||
//tab鍵按下
|
||||
$(document).on('keydown', function(e) {
|
||||
|
|
@ -924,15 +924,6 @@
|
|||
|
||||
// 有連結目的之所有a標籤的無障礙處理
|
||||
$(function() {
|
||||
// Bootstrap 會把原始 title 搬到 data-bs-original-title,先還原回來
|
||||
$('a[data-bs-original-title]').each(function() {
|
||||
var $a = $(this);
|
||||
var originalTitle = $a.attr('data-bs-original-title');
|
||||
if (originalTitle && originalTitle.trim() !== '') {
|
||||
$a.attr('title', originalTitle);
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* 全站無障礙 AA 級補強 (整合 HM1240400C 與 HM1240401C 規範)
|
||||
*/
|
||||
|
|
@ -946,7 +937,7 @@ $(function() {
|
|||
//├─ 文字是路徑/空 → 補隱藏 span
|
||||
//├─ 圖片+文字共存 → 圖片 alt 清空
|
||||
//├─ 無 title → 自動產出 title
|
||||
//├─ 有 title 但與連結文字或圖片 alt 重複 → 只保留開窗提示
|
||||
//├─ 有 title 但與連結文字重複 → 只保留開窗提示
|
||||
//├─ 有 title 出現空括號 () → 清除並補上正確開窗提示
|
||||
//└─ 移除 aria-label
|
||||
var urlParams = new URLSearchParams(window.location.search);
|
||||
|
|
@ -992,9 +983,6 @@ $(function() {
|
|||
var $img = $a.find('img');
|
||||
var $icons = $a.find('i, svg');
|
||||
var currentTitle = ($a.attr('title') || '').trim();
|
||||
|
||||
// ✅ 在 D 區塊清空 alt 之前,先記錄圖片原始 alt
|
||||
var imgAltOriginal = $img.length > 0 ? ($img.attr('alt') || '').trim() : '';
|
||||
|
||||
// --- 【修正 1:隱藏空連結】 ---
|
||||
if (!isEditMode && linkText === "" && $img.length === 0 && $icons.length === 0) {
|
||||
|
|
@ -1112,10 +1100,13 @@ $(function() {
|
|||
.replace('另開新視窗', '')
|
||||
.trim();
|
||||
|
||||
// ✅ title 去掉開窗字串後,若與連結文字或圖片原始 alt 相同,則只保留開窗提示
|
||||
// ✅ 取得圖片原始 alt(D 區塊清空前的值)
|
||||
var imgAltOriginal = $img.length > 0 ? ($img.data('originalAlt') || $img.attr('alt') || '').trim() : '';
|
||||
|
||||
// ✅ 修正:title 去掉開窗字串後,若與連結文字或圖片 alt 相同,則只保留開窗提示
|
||||
if (
|
||||
(titleWithoutWindow === linkText && linkText !== i18n.link) ||
|
||||
(imgAltOriginal !== '' && titleWithoutWindow === imgAltOriginal)
|
||||
(imgAltOriginal !== '' && titleWithoutWindow === imgAltOriginal) // ✅ 新增:與圖片 alt 重複也觸發
|
||||
) {
|
||||
$a.attr('title', windowTask);
|
||||
}
|
||||
|
|
@ -1131,29 +1122,12 @@ $(function() {
|
|||
// F. 最終清理:移除冗餘 label,避免螢幕閱讀器唸兩次
|
||||
$a.removeAttr('aria-label');
|
||||
});
|
||||
|
||||
// ✅ G. 補強特定連結(須在迴圈外,因為 javascript: 連結被迴圈跳過)
|
||||
$('.btn-o a').each(function() {
|
||||
var $a = $(this);
|
||||
if (!$a.attr('target')) {
|
||||
$a.attr('target', '_blank');
|
||||
$a.attr('rel', 'noopener noreferrer');
|
||||
}
|
||||
$a.attr('title', isEn ? 'Share to X Open in new window' : '分享至 X 在新視窗開啟');
|
||||
});
|
||||
|
||||
$('.print-button a').each(function() {
|
||||
var $a = $(this);
|
||||
if (!$a.attr('title') || $a.attr('title').trim().toLowerCase() === 'print') {
|
||||
$a.attr('title', isEn ? 'Print this page' : '列印此頁');
|
||||
}
|
||||
});
|
||||
|
||||
$('a.i-archive__file-name').each(function () {
|
||||
var $a = $(this);
|
||||
var isNewWindow = ($a.attr('target') === '_blank');
|
||||
$a.attr('title', isNewWindow ? i18n.newWin : i18n.selfWin);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
// ✅ 延遲 800ms 確保所有其他 function 執行完畢後才處理
|
||||
|
|
@ -1162,7 +1136,22 @@ $(function() {
|
|||
}, 800);
|
||||
});
|
||||
|
||||
|
||||
// if (location.href.search('editmode=on') === -1) {
|
||||
// // 1. 處理圖片 alt 重複問題 (保持原邏輯但優化)
|
||||
// $('a').has('img').each(function () {
|
||||
// const $link = $(this);
|
||||
// const linkText = $link.text().trim();
|
||||
|
||||
// $link.find('img').each(function () {
|
||||
// const $img = $(this);
|
||||
// const altText = $img.attr('alt')?.trim();
|
||||
|
||||
// if (altText && altText === linkText) {
|
||||
// $img.attr('alt', '');
|
||||
// }
|
||||
// });
|
||||
// });
|
||||
// }
|
||||
$(function() {
|
||||
function smartFixIcons() {
|
||||
var isEn = $('html').attr('lang') === 'en';
|
||||
|
|
|
|||
Loading…
Reference in New Issue