MediaWiki:Common.js: Difference between revisions
From Emmy The Robot Fandom Wiki
Content added Content deleted
No edit summary |
No edit summary |
||
Line 13: | Line 13: | ||
searchInput.setAttribute('type', 'text'); |
searchInput.setAttribute('type', 'text'); |
||
searchInput.setAttribute('id', 'mediawiki-text-parser-input'); |
searchInput.setAttribute('id', 'mediawiki-text-parser-input'); |
||
searchInput.setAttribute('placeholder', 'Type to |
searchInput.setAttribute('placeholder', 'Type to search1'); |
||
document.getElementById('mw-content-text').insertBefore(searchInput, document.getElementById('mw-content-text').firstChild); |
document.getElementById('mw-content-text').insertBefore(searchInput, document.getElementById('mw-content-text').firstChild); |
||
Line 21: | Line 21: | ||
// Get all paragraphs in the content area |
// Get all paragraphs in the content area |
||
var paragraphs = document.querySelectorAll ('table.wikitable.sortable.mw-datatable.jquery-tablesorter tr'); |
var paragraphs = document.querySelectorAll ('table.wikitable.sortable.mw-datatable.jquery-tablesorter tr:not(:first-child)'); |
||
// Loop through each paragraph |
// Loop through each paragraph |
Revision as of 08:24, 10 May 2024
if ( mw.config.get( 'wgPageName' ) === 'Main_Page' ) {
document.getElementsByTagName('br')[0].remove();
}
if ( mw.config.get( 'wgPageName' ) === 'Main_Page' ) {
document.getElementsByTagName('h1')[0].remove();
}
// Function to initialize the text parsing and filtering functionality
function initializeTextParser() {
// Create a search input field
var searchInput = document.createElement('input');
searchInput.setAttribute('type', 'text');
searchInput.setAttribute('id', 'mediawiki-text-parser-input');
searchInput.setAttribute('placeholder', 'Type to search1');
document.getElementById('mw-content-text').insertBefore(searchInput, document.getElementById('mw-content-text').firstChild);
// Attach an event listener to the search input field
searchInput.addEventListener('input', function() {
var searchText = this.value.toLowerCase();
// Get all paragraphs in the content area
var paragraphs = document.querySelectorAll ('table.wikitable.sortable.mw-datatable.jquery-tablesorter tr:not(:first-child)');
// Loop through each paragraph
for (var i = 0; i < paragraphs.length; i++) {
var paragraph = paragraphs[i];
var paragraphText = paragraph.textContent.toLowerCase();
// Check if the paragraph contains the search text
if (paragraphText.includes(searchText)) {
paragraph.style.display = 'block'; // Show the paragraph
} else {
paragraph.style.display = 'none'; // Hide the paragraph
}
}
});
}
// Call the initializeTextParser function when the DOM is ready
function initializeTextParserOnLoad() {
if (document.readyState === "complete" || (document.readyState !== "loading" && !document.documentElement.doScroll)) {
// The DOM has already loaded, so call initializeTextParser immediately
initializeTextParser();
} else {
// Wait for the DOMContentLoaded event to call initializeTextParser
document.addEventListener('DOMContentLoaded', initializeTextParser);
}
}
// Call the initializeTextParserOnLoad function when the entire page is loaded
window.onload = initializeTextParserOnLoad;