目前格式:HTML/XML
<script>
$(function () {
// 1) 在密碼那一行(.loginFixInline14 -> .loginFixInline8)最後插入按鈕
var $pwdWrap = $('.loginFixInline14 .loginFixInline8');
if ($pwdWrap.find('.pw-toggle').length === 0) {
$pwdWrap.append('<button type="button" class="pw-toggle eye-close" aria-label="顯示密碼" aria-pressed="false"></button>');
}
// 2) 綁定切換:只動真正密碼框(#loginFixInline15)
$pwdWrap.on('click', '.pw-toggle', function () {
var $btn = $(this);
var $input = $('#loginFixInline15'); // 你的真正密碼欄
var show = $input.attr('type') === 'password';
$input.attr('type', show ? 'text' : 'password');
$btn.toggleClass('eye-open eye-close')
.attr('aria-pressed', show)
.attr('aria-label', show ? '隱藏密碼' : '顯示密碼');
$input.trigger('focus');
});
// 3) 對齊:把眼睛「左邊」對齊帳號行 checkbox 的「左邊」
function alignEye() {
var $accWrap = $('.loginFixInline7 .loginFixInline8'); // 帳號那一行的大膠囊
var $accRight = $accWrap.find('.loginFixInline11'); // 右側含 checkbox 的容器
var $eye = $pwdWrap.find('.pw-toggle');
if ($accWrap.length && $accRight.length && $eye.length) {
// 以各自 .loginFixInline8 為座標系,量「checkbox 左邊」的 x
var leftInAcc = $accRight.position().left; // checkbox 容器在帳號膠囊內的 left
$eye.css({ left: leftInAcc + 'px' }); // 讓眼睛在密碼膠囊內的 left 對齊
}
}
// 初次與視窗改變時都重算一次
alignEye();
$(window).on('resize', alignEye);
});
</script>
PHNjcmlwdD4KCiQoZnVuY3Rpb24gKCkgewoKICAvLyAxKSDlnKjlr4bnorzpgqPkuIDooYzvvIgubG9naW5GaXhJbmxpbmUxNCAtPiAubG9naW5GaXhJbmxpbmU477yJ5pyA5b6M5o+S5YWl5oyJ6YiVCgogIHZhciAkcHdkV3JhcCA9ICQoJy5sb2dpbkZpeElubGluZTE0IC5sb2dpbkZpeElubGluZTgnKTsKCiAgaWYgKCRwd2RXcmFwLmZpbmQoJy5wdy10b2dnbGUnKS5sZW5ndGggPT09IDApIHsKCiAgICAkcHdkV3JhcC5hcHBlbmQoJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icHctdG9nZ2xlIGV5ZS1jbG9zZSIgYXJpYS1sYWJlbD0i6aGv56S65a+G56K8IiBhcmlhLXByZXNzZWQ9ImZhbHNlIj48L2J1dHRvbj4nKTsKCiAgfQoKCgogIC8vIDIpIOe2geWumuWIh+aPm++8muWPquWLleecn+ato+WvhueivOahhu+8iCNsb2dpbkZpeElubGluZTE177yJCgogICRwd2RXcmFwLm9uKCdjbGljaycsICcucHctdG9nZ2xlJywgZnVuY3Rpb24gKCkgewoKICAgIHZhciAkYnRuICAgPSAkKHRoaXMpOwoKICAgIHZhciAkaW5wdXQgPSAkKCcjbG9naW5GaXhJbmxpbmUxNScpOyAgIC8vIOS9oOeahOecn+ato+WvhueivOashAoKICAgIHZhciBzaG93ICAgPSAkaW5wdXQuYXR0cigndHlwZScpID09PSAncGFzc3dvcmQnOwoKICAgICRpbnB1dC5hdHRyKCd0eXBlJywgc2hvdyA/ICd0ZXh0JyA6ICdwYXNzd29yZCcpOwoKICAgICRidG4udG9nZ2xlQ2xhc3MoJ2V5ZS1vcGVuIGV5ZS1jbG9zZScpCgogICAgICAgIC5hdHRyKCdhcmlhLXByZXNzZWQnLCBzaG93KQoKICAgICAgICAuYXR0cignYXJpYS1sYWJlbCcsIHNob3cgPyAn6Zqx6JeP5a+G56K8JyA6ICfpoa/npLrlr4bnorwnKTsKCiAgICAkaW5wdXQudHJpZ2dlcignZm9jdXMnKTsKCiAgfSk7CgoKCiAgLy8gMykg5bCN6b2K77ya5oqK55y8552b44CM5bem6YKK44CN5bCN6b2K5biz6Jmf6KGMIGNoZWNrYm94IOeahOOAjOW3pumCiuOAjQoKICBmdW5jdGlvbiBhbGlnbkV5ZSgpIHsKCiAgICB2YXIgJGFjY1dyYXAgID0gJCgnLmxvZ2luRml4SW5saW5lNyAubG9naW5GaXhJbmxpbmU4Jyk7ICAgICAvLyDluLPomZ/pgqPkuIDooYznmoTlpKfohqDlm4oKCiAgICB2YXIgJGFjY1JpZ2h0ID0gJGFjY1dyYXAuZmluZCgnLmxvZ2luRml4SW5saW5lMTEnKTsgICAgICAgICAvLyDlj7PlgbTlkKsgY2hlY2tib3gg55qE5a655ZmoCgogICAgdmFyICRleWUgICAgICA9ICRwd2RXcmFwLmZpbmQoJy5wdy10b2dnbGUnKTsKCgoKICAgIGlmICgkYWNjV3JhcC5sZW5ndGggJiYgJGFjY1JpZ2h0Lmxlbmd0aCAmJiAkZXllLmxlbmd0aCkgewoKICAgICAgLy8g5Lul5ZCE6IeqIC5sb2dpbkZpeElubGluZTgg54K65bqn5qiZ57O777yM6YeP44CMY2hlY2tib3gg5bem6YKK44CN55qEIHgKCiAgICAgIHZhciBsZWZ0SW5BY2MgPSAkYWNjUmlnaHQucG9zaXRpb24oKS5sZWZ0OyAgICAgICAgICAgICAgICAvLyBjaGVja2JveCDlrrnlmajlnKjluLPomZ/ohqDlm4rlhafnmoQgbGVmdAoKICAgICAgJGV5ZS5jc3MoeyBsZWZ0OiBsZWZ0SW5BY2MgKyAncHgnIH0pOyAgICAgICAgICAgICAgICAgICAgIC8vIOiuk+ecvOedm+WcqOWvhueivOiGoOWbiuWFp+eahCBsZWZ0IOWwjem9igoKICAgIH0KCiAgfQoKCgogIC8vIOWIneasoeiIh+imlueql+aUueiuiuaZgumDvemHjeeul+S4gOasoQoKICBhbGlnbkV5ZSgpOwoKICAkKHdpbmRvdykub24oJ3Jlc2l6ZScsIGFsaWduRXllKTsKCn0pOwoKPC9zY3JpcHQ+Cg==