MediaWiki:Common.js
注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的更改的影响。
- Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
- Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
- Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5。
/* 这里的任何JavaScript将为所有用户在每次页面加载时加载。 */
mw.loader.load( '//sdk.51.la/js-sdk-pro.min.js' );
mw.loader.load( '/w/index.php?title=MediaWiki:ExpandAndCollapse.js&action=raw&ctype=text/javascript' );
/* 公告栏的滚动 */
$(function () {
var self = $('#siteNoticeScroll');
if (!self[0]) return;
var ul = self.find('ul:first');
ul.width(self.width() * self.find('li').length).attr({
'data-left': 0,
'data-length': self.find('li').length
}).find('li').width(self.width());
window.setInterval(function () {
var dataset = ul[0].dataset,
oldLeft = +dataset.left;
ul.css('marginLeft', -(++oldLeft * self.width()) + 'px').delay(730).queue(function () {
dataset.left = oldLeft === +dataset.length - 1 ? -1 : oldLeft;
$(this).dequeue();
});
}, 5000);
$(window).on('resize', function () {
ul.width(self.width() * self.find('li').length).animate({
marginLeft: -((+ul[0].dataset.left === -1 ? 0 : +ul[0].dataset.left) * self.width()) + 'px'
}, 370);
});
});
/* 动态 Tooltip */
document.querySelectorAll('.dynamic-tooltip-trigger').forEach(element => {
const tooltip = document.createElement('div');
tooltip.className = 'mw-dynamic-tooltip';
document.body.appendChild(tooltip);
element.addEventListener('mouseover', function(e) {
const rect = e.target.getBoundingClientRect();
tooltip.innerHTML = e.target.dataset.mwDynamic; // 动态内容
tooltip.style.display = 'block';
tooltip.style.top = `${rect.bottom + window.scrollY}px`;
tooltip.style.left = `${rect.left + window.scrollX}px`;
});
element.addEventListener('mouseout', () => {
tooltip.style.display = 'none';
});
});