update
This commit is contained in:
parent
37df38d91b
commit
5642b5d446
|
|
@ -521,20 +521,28 @@ $(document).ready(function() {
|
||||||
});
|
});
|
||||||
//播放驗證碼語音
|
//播放驗證碼語音
|
||||||
$(function () {
|
$(function () {
|
||||||
$('.ask-question')
|
var pageLang = ($('html').attr('lang') || 'zh-Hant').toLowerCase();
|
||||||
.find('.controls button.fas.fa-volume-up')
|
var isEn = pageLang.startsWith('en');
|
||||||
.each(function () {
|
var label = isEn ? 'Play Captcha Voice' : '播放驗證碼語音';
|
||||||
const $btn = $(this);
|
|
||||||
|
|
||||||
// 已經補過就不重複處理
|
$('.ask-question')
|
||||||
if ($btn.attr('aria-label')) return;
|
.find('.controls button.fas.fa-volume-up')
|
||||||
|
.each(function () {
|
||||||
|
var $btn = $(this);
|
||||||
|
|
||||||
$btn.attr({
|
$btn.attr({
|
||||||
'aria-label': '播放驗證碼語音',
|
'aria-label': label,
|
||||||
'aria-controls': 'captcha_audio',
|
'title': label,
|
||||||
'role': 'button'
|
'aria-controls': 'captcha_audio',
|
||||||
});
|
'role': 'button'
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// ✅ 同步更新 sr-only 文字(若有)
|
||||||
|
var $sr = $btn.find('.sr-only');
|
||||||
|
if ($sr.length > 0) {
|
||||||
|
$sr.text(label);
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
//刪除td的id
|
//刪除td的id
|
||||||
|
|
@ -3102,11 +3110,15 @@ $(document).ready(function() {
|
||||||
});
|
});
|
||||||
//post
|
//post
|
||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
$('iframe.twitter-share-button, iframe.twitter-tweet-button').each(function () {
|
var pageLang = ($('html').attr('lang') || 'zh-Hant').toLowerCase();
|
||||||
$(this).attr('title', '分享至 X 在新視窗開啟');
|
var isEn = pageLang.startsWith('en');
|
||||||
});
|
var title = isEn ? 'Share to X Open in new window' : '分享至 X 在新視窗開啟';
|
||||||
}, 1500);
|
|
||||||
|
$('iframe.twitter-share-button, iframe.twitter-tweet-button').each(function () {
|
||||||
|
$(this).attr('title', title);
|
||||||
|
});
|
||||||
|
}, 1500);
|
||||||
});
|
});
|
||||||
$(function() {
|
$(function() {
|
||||||
function bindIframeFocus() {
|
function bindIframeFocus() {
|
||||||
|
|
@ -3542,4 +3554,82 @@ $(function() {
|
||||||
|
|
||||||
fixSideMenuBtnA11y();
|
fixSideMenuBtnA11y();
|
||||||
});
|
});
|
||||||
|
//banner英文
|
||||||
|
$(function() {
|
||||||
|
function fixBannerA11yByLang() {
|
||||||
|
setTimeout(function() {
|
||||||
|
var pageLang = ($('html').attr('lang') || 'zh-Hant').toLowerCase();
|
||||||
|
var isEn = pageLang.startsWith('en');
|
||||||
|
|
||||||
|
var i18n = {
|
||||||
|
playControls: isEn ? 'Playback Controls' : '播放控制選項',
|
||||||
|
resume: isEn ? 'Play' : '繼續播放',
|
||||||
|
pause: isEn ? 'Pause' : '暫停播放',
|
||||||
|
prev: isEn ? 'Previous' : '上一張',
|
||||||
|
next: isEn ? 'Next' : '下一張',
|
||||||
|
slide: isEn ? 'Slide' : '第',
|
||||||
|
slideUnit: isEn ? '' : ' 張投影片'
|
||||||
|
};
|
||||||
|
|
||||||
|
$('.w-ba-banner').each(function() {
|
||||||
|
var $banner = $(this);
|
||||||
|
|
||||||
|
// ✅ 播放控制選項 radiogroup label
|
||||||
|
$banner.find('.controlplay').attr('aria-label', i18n.playControls);
|
||||||
|
|
||||||
|
// ✅ 繼續播放按鈕
|
||||||
|
$banner.find('.resume-slide').attr({
|
||||||
|
'aria-label': i18n.resume,
|
||||||
|
'title': i18n.resume
|
||||||
|
});
|
||||||
|
$banner.find('.resume-slide p').text(i18n.resume);
|
||||||
|
|
||||||
|
// ✅ 暫停播放按鈕
|
||||||
|
$banner.find('.pause-slide').attr({
|
||||||
|
'aria-label': i18n.pause,
|
||||||
|
'title': i18n.pause
|
||||||
|
});
|
||||||
|
$banner.find('.pause-slide p').text(i18n.pause);
|
||||||
|
|
||||||
|
// ✅ 上一張按鈕
|
||||||
|
$banner.find('.prev-button').attr('aria-label', i18n.prev);
|
||||||
|
|
||||||
|
// ✅ 下一張按鈕
|
||||||
|
$banner.find('.next-button').attr('aria-label', i18n.next);
|
||||||
|
|
||||||
|
// ✅ Pager 按鈕
|
||||||
|
var $slides = $banner.find('.w-ba-banner__slide');
|
||||||
|
$banner.find('.banner-pager button').each(function(index) {
|
||||||
|
var slideTitle = $slides.eq(index).data('cycle-title') || '';
|
||||||
|
var ariaLabel = isEn
|
||||||
|
? i18n.slide + ' ' + (index + 1) + (slideTitle ? ' ' + slideTitle : '')
|
||||||
|
: i18n.slide + (index + 1) + i18n.slideUnit + (slideTitle ? ' ' + slideTitle : '');
|
||||||
|
$(this).attr({
|
||||||
|
'aria-label': ariaLabel,
|
||||||
|
'title': ariaLabel
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
// ✅ Cycle2 初始化後也重新處理 Pager(因為 pager 是動態產生的)
|
||||||
|
$('.w-ba-banner .cycle-slideshow').on('cycle-post-initialize cycle-after', function() {
|
||||||
|
var $banner = $(this).closest('.w-ba-banner');
|
||||||
|
var $slides = $banner.find('.w-ba-banner__slide');
|
||||||
|
$banner.find('.banner-pager button').each(function(index) {
|
||||||
|
var slideTitle = $slides.eq(index).data('cycle-title') || '';
|
||||||
|
var ariaLabel = isEn
|
||||||
|
? i18n.slide + ' ' + (index + 1) + (slideTitle ? ' ' + slideTitle : '')
|
||||||
|
: i18n.slide + (index + 1) + i18n.slideUnit + (slideTitle ? ' ' + slideTitle : '');
|
||||||
|
$(this).attr({
|
||||||
|
'aria-label': ariaLabel,
|
||||||
|
'title': ariaLabel
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
}, 800);
|
||||||
|
}
|
||||||
|
|
||||||
|
fixBannerA11yByLang();
|
||||||
|
});
|
||||||
}(jQuery, window));
|
}(jQuery, window));
|
||||||
|
|
|
||||||
|
|
@ -214,6 +214,6 @@ img{
|
||||||
// overflow-x: auto;
|
// overflow-x: auto;
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
*[data-pp]>.editmode-ps>a, .admin-subpart-area .content>.editmode-ps>a{
|
input[type=checkbox]:focus {
|
||||||
position: !important;
|
outline: 0.3125em auto -webkit-focus-ring-color;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,14 @@
|
||||||
@charset "utf-8";
|
@charset "utf-8";
|
||||||
|
|
||||||
@import "../initial";
|
@import "../initial";
|
||||||
|
@media (max-width: 767px) {
|
||||||
|
#orbit-bar .orbit-bar-title {
|
||||||
|
text-align: left;
|
||||||
|
a{
|
||||||
|
font-size: 0.8em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
.nav_ul{
|
.nav_ul{
|
||||||
padding: 0;
|
padding: 0;
|
||||||
& > li{
|
& > li{
|
||||||
|
|
@ -256,8 +264,6 @@ i.kenmenu-drop.fa-solid.fa-chevron-down {
|
||||||
h1{
|
h1{
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
width: 80%;
|
|
||||||
height: 3em;
|
|
||||||
padding: 0;
|
padding: 0;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
@ -267,7 +273,6 @@ i.kenmenu-drop.fa-solid.fa-chevron-down {
|
||||||
float: left;
|
float: left;
|
||||||
height: 39px;
|
height: 39px;
|
||||||
padding-right: 0.5em;
|
padding-right: 0.5em;
|
||||||
width: auto!important;
|
|
||||||
@media(min-width: 1024px){
|
@media(min-width: 1024px){
|
||||||
height: 39px;
|
height: 39px;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -83,7 +83,6 @@
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
.site-logo {
|
.site-logo {
|
||||||
height: 35px !important;
|
|
||||||
-webkit-transition: all .3s ease;
|
-webkit-transition: all .3s ease;
|
||||||
-moz-transition: all .3s ease;
|
-moz-transition: all .3s ease;
|
||||||
-ms-transition: all .3s ease;
|
-ms-transition: all .3s ease;
|
||||||
|
|
|
||||||
|
|
@ -29,9 +29,7 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="w-ad-banner__pager-2 w-ba-banner__caption banner-pager banner_caption_{{subpart-id}}" data-list="images" data-level="0">
|
<ul class="w-ba-banner__pager-2 banner-pager banner_caption_{{subpart-id}}"></ul>
|
||||||
<li><button title="Slide {{slide_number}}" aria-label="Pager"><span style="display: none;">Slide {{slide_number}}</span></button></li>
|
|
||||||
</div>
|
|
||||||
<ul class="controlplay" role="radiogroup" aria-label="播放控制選項">
|
<ul class="controlplay" role="radiogroup" aria-label="播放控制選項">
|
||||||
<a role="radio" aria-checked="true" href="javascript:;" class="resume-slide active" title="繼續播放" aria-label="繼續播放" aria-live="assertive">
|
<a role="radio" aria-checked="true" href="javascript:;" class="resume-slide active" title="繼續播放" aria-label="繼續播放" aria-live="assertive">
|
||||||
<i aria-hidden="true"></i>
|
<i aria-hidden="true"></i>
|
||||||
|
|
@ -83,6 +81,25 @@
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
|
.w-ba-banner .controlplay .resume-slide.active i{
|
||||||
|
color: #32D9C3;
|
||||||
|
}
|
||||||
|
.w-ba-banner .controlplay .pause-slide.active i{
|
||||||
|
color: #ff4500;
|
||||||
|
}
|
||||||
|
.w-ba-banner .controlplay{
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
.w-ba-banner .button-mid{
|
||||||
|
position: absolute;
|
||||||
|
width: 100%;
|
||||||
|
height: 0;
|
||||||
|
top: 50%;
|
||||||
|
}
|
||||||
|
.next-button,.prev-button{
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
</style><style type="text/css">
|
||||||
.w-ba-banner .controlplay .resume-slide.active i{
|
.w-ba-banner .controlplay .resume-slide.active i{
|
||||||
color: #32D9C3;
|
color: #32D9C3;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
<ul class="i-annc__list row" data-level="0" data-list="announcements">
|
<ul class="i-annc__list row" data-level="0" data-list="announcements">
|
||||||
<li class="i-annc__item rotate0">
|
<li class="i-annc__item rotate0">
|
||||||
<div class="i-annc__img-wrap bullseye">
|
<div class="i-annc__img-wrap bullseye">
|
||||||
<a href="{{link_to_show}}" alt="{{img_description}}" title="{{img_description}}">
|
<a href="{{link_to_show}}" title="{{img_description}}">
|
||||||
<img class="i-annc__img" src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
<img class="i-annc__img" src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -2,9 +2,9 @@
|
||||||
<h3 class="i-annc__page-title"><span>{{page-title}}</span></h3>
|
<h3 class="i-annc__page-title"><span>{{page-title}}</span></h3>
|
||||||
<ul class="i-annc__list row" data-level="0" data-list="announcements">
|
<ul class="i-annc__list row" data-level="0" data-list="announcements">
|
||||||
<li class="i-annc__item col-md-3 col-sm-3">
|
<li class="i-annc__item col-md-3 col-sm-3">
|
||||||
<a href="{{link_to_show}}" alt="{{img_description}}" title="{{img_description}}">
|
<a href="{{link_to_show}}" title="{{img_description}}">
|
||||||
<div class="i-annc__img-wrap bullseye">
|
<div class="i-annc__img-wrap bullseye">
|
||||||
<img class="i-annc__img" src="{{img_src}}" alt="" title="{{img_description}}">
|
<img class="i-annc__img" src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
<div class="i-annc__content-wrap">
|
<div class="i-annc__content-wrap">
|
||||||
<div class="i-annc__meta">
|
<div class="i-annc__meta">
|
||||||
|
|
|
||||||
|
|
@ -2,10 +2,10 @@
|
||||||
<h3 class="i-annc__page-title"><span>{{page-title}}</span></h3>
|
<h3 class="i-annc__page-title"><span>{{page-title}}</span></h3>
|
||||||
<ul class="i-annc__list" data-level="0" data-list="announcements">
|
<ul class="i-annc__list" data-level="0" data-list="announcements">
|
||||||
<li class="i-annc__item row">
|
<li class="i-annc__item row">
|
||||||
<a href="{{link_to_show}}" alt="{{img_description}}" title="{{img_description}}">
|
<a href="{{link_to_show}}" title="{{img_description}}">
|
||||||
<div class="i-annc__img-wrap col-sm-4">
|
<div class="i-annc__img-wrap col-sm-4">
|
||||||
|
|
||||||
<img class="i-annc__img" src="{{img_src}}" alt="" title="{{img_description}}">
|
<img class="i-annc__img" src="{{img_src}}" alt="{{img_description}}">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="i-annc__content-wrap col-sm-8">
|
<div class="i-annc__content-wrap col-sm-8">
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
<h3 class="i-annc__page-title"><span>{{page-title}}</span></h3>
|
<h3 class="i-annc__page-title"><span>{{page-title}}</span></h3>
|
||||||
<ul class="i-annc__list" data-level="0" data-list="announcements">
|
<ul class="i-annc__list" data-level="0" data-list="announcements">
|
||||||
<li class="i-annc__item row">
|
<li class="i-annc__item row">
|
||||||
<a href="{{link_to_show}}" alt="{{img_description}}" title="{{img_description}}">
|
<a href="{{link_to_show}}" title="{{img_description}}">
|
||||||
<div class="i-annc__content-wrap col-sm-8">
|
<div class="i-annc__content-wrap col-sm-8">
|
||||||
<div class="i-annc__meta">
|
<div class="i-annc__meta">
|
||||||
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
|
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
|
||||||
|
|
@ -23,7 +23,7 @@
|
||||||
<p class="i-annc__subtitle">{{subtitle}}</p>
|
<p class="i-annc__subtitle">{{subtitle}}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="i-annc__img-wrap col-sm-4">
|
<div class="i-annc__img-wrap col-sm-4">
|
||||||
<img class="i-annc__img" src="{{img_src}}" alt="" title="{{img_description}}">
|
<img class="i-annc__img" src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
<li class="i-annc__item row">
|
<li class="i-annc__item row">
|
||||||
<a href="{{link_to_show}}" title="{{img_description}}">
|
<a href="{{link_to_show}}" title="{{img_description}}">
|
||||||
<div class="i-annc__img-wrap col-sm-4">
|
<div class="i-annc__img-wrap col-sm-4">
|
||||||
<img class="i-annc__img" src="{{img_src}}" alt="" title="{{img_description}}">
|
<img class="i-annc__img" src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
<div class="i-annc__content-wrap col-sm-8">
|
<div class="i-annc__content-wrap col-sm-8">
|
||||||
<div class="i-annc__meta">
|
<div class="i-annc__meta">
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@
|
||||||
<p class="i-annc__subtitle">{{subtitle}}</p>
|
<p class="i-annc__subtitle">{{subtitle}}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="i-annc__img-wrap col-sm-4">
|
<div class="i-annc__img-wrap col-sm-4">
|
||||||
<img class="i-annc__img" src="{{img_src}}" alt="" title="{{img_description}}">
|
<img class="i-annc__img" src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
<li class="i-annc__item col-md-4">
|
<li class="i-annc__item col-md-4">
|
||||||
<a href="{{link_to_show}}" title="{{img_description}}">
|
<a href="{{link_to_show}}" title="{{img_description}}">
|
||||||
<div class="i-annc__img-wrap bullseye" style="position:relative">
|
<div class="i-annc__img-wrap bullseye" style="position:relative">
|
||||||
<img class="i-annc__img" src="{{img_src}}" alt="" title="{{img_description}}">
|
<img class="i-annc__img" src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
<div class="i-annc__content-wrap">
|
<div class="i-annc__content-wrap">
|
||||||
<div class="i-annc__meta">
|
<div class="i-annc__meta">
|
||||||
|
|
|
||||||
|
|
@ -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-3">
|
<div class="i-member-pic-wrap col-sm-3">
|
||||||
<a href="{{link_to_show}}" title="{{name}}">
|
<a href="{{link_to_show}}" title="{{name}}">
|
||||||
<img class="i-member-pic img-thumbnail" src="{{image}}" title="{{name}}">
|
<img class="i-member-pic img-thumbnail" src="{{image}}" alt="{{name}}">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="i-member-profile-data-wrap col-sm-9">
|
<div class="i-member-profile-data-wrap col-sm-9">
|
||||||
|
|
|
||||||
|
|
@ -13,12 +13,11 @@
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
.universal-th-text{
|
.universal-th-text{
|
||||||
|
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
display: -webkit-box;
|
display: -webkit-box;
|
||||||
-webkit-line-clamp: 2;
|
-webkit-line-clamp: 2;
|
||||||
white-space: normal;
|
white-space: pre !important;
|
||||||
}
|
}
|
||||||
.universal-dropdown-menu {
|
.universal-dropdown-menu {
|
||||||
padding: 15px 18px;
|
padding: 15px 18px;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
</h3>
|
</h3>
|
||||||
<ul class="list-unstyled" data-list="web_link" data-level="0">
|
<ul class="list-unstyled" data-list="web_link" data-level="0">
|
||||||
<li class="index-content">
|
<li class="index-content">
|
||||||
<a class="index-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
<a class="" 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}}">
|
<img src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
</h3>
|
</h3>
|
||||||
<ul class="list-unstyled" data-list="web_link" data-level="0">
|
<ul class="list-unstyled" data-list="web_link" data-level="0">
|
||||||
<li class="index-content col-sm-3">
|
<li class="index-content col-sm-3">
|
||||||
<h4>
|
<h4>
|
||||||
<span class="link-title">
|
<span class="link-title">
|
||||||
{{title}}
|
{{title}}
|
||||||
</span>
|
</span>
|
||||||
|
|
@ -12,7 +12,7 @@
|
||||||
<span class="label status {{status-class}}">{{status}}</span>
|
<span class="label status {{status-class}}">{{status}}</span>
|
||||||
</span>
|
</span>
|
||||||
</h4>
|
</h4>
|
||||||
<a class="index-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
<a class="" 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}}">
|
<img src="{{img_src}}" alt="{{img_description}}">
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue