|
|
| (未显示1个用户的8个中间版本) |
| 第1行: |
第1行: |
| /* 这里的任何JavaScript将为所有用户在每次页面加载时加载。 */ | | /* 这里的任何JavaScript将为所有用户在每次页面加载时加载。 */ |
| mw.loader.load( '//sdk.51.la/js-sdk-pro.min.js' ); | | //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' ); | | mw.loader.load( '/w/index.php?title=MediaWiki:ExpandAndCollapse.js&action=raw&ctype=text/javascript' ); |
|
| |
|
| /* 公告栏的滚动 */
| | mw.loader.using([], function () { |
| $(function () {
| | var s = document.createElement('script'); |
| var self = $('#siteNoticeScroll'); | | s.src = '//sdk.51.la/js-sdk-pro.min.js'; |
| if (!self[0]) return;
| | s.charset = 'UTF-8'; |
| var ul = self.find('ul:first');
| | s.onload = function() { |
| ul.width(self.width() * self.find('li').length).attr({ | | if (typeof LA !== 'undefined') { |
| 'data-left': 0,
| | LA.init({id:'3Iq1VwOsODsXILsN', ck:'3Iq1VwOsODsXILsN'}); |
| 'data-length': self.find('li').length
| | } |
| }).find('li').width(self.width()); | | }; |
| window.setInterval(function () { | | document.head.appendChild(s); |
| 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';
| |
| });
| |
| }); | | }); |