MediaWiki:Common.js: Difference between revisions
From Tiny Rogues Wiki
(Created page with "→Any JavaScript here will be loaded for all users on every page load.: function filterSearch() { var input, filter, ul, li, a, i, txtValue; input = document.getElementById('FilterInput'); filter = input.value.toUpperCase(); ul = document.getElementById("FilterUL"); li = ul.getElementsByTagName('li'); for (i = 0; i < li.length; i++) { a = li[i].getElementsByTagName("a")[0]; →txtValue = a.textContent || a.innerText;: txtValue = a.title;...") |
No edit summary Tag: Reverted |
||
Line 18: | Line 18: | ||
} | } | ||
} | } | ||
function itemfilter_filterItems(val) { | |||
var attributes = ['type', 'subtype']; | |||
var str = value.toLowerCase(); | |||
var items = document.querySelectorAll('#FilterUL li'); | |||
items.forEach(function(item) { | |||
var check = false; | |||
for (var i = 0; i < attributes.length; i++) { | |||
var attribute_val = item.getAttribute('data-' + attributes[i]); | |||
if (attribute_val && attribute_val.toLowerCase().includes(filterValue)) { | |||
check = true; | |||
break; | |||
} | |||
} | |||
item.style.display = check ? 'block' : 'none'; | |||
}); | |||
} | |||
document.getElementById('FilterInput').addEventListener('keydown change', function() { | |||
itemfilter_filterItems(this.value); | |||
}); |
Revision as of 22:01, 15 March 2024
/* Any JavaScript here will be loaded for all users on every page load. */
function filterSearch() {
var input, filter, ul, li, a, i, txtValue;
input = document.getElementById('FilterInput');
filter = input.value.toUpperCase();
ul = document.getElementById("FilterUL");
li = ul.getElementsByTagName('li');
for (i = 0; i < li.length; i++) {
a = li[i].getElementsByTagName("a")[0];
/* txtValue = a.textContent || a.innerText; */
txtValue = a.title;
if (txtValue.toUpperCase().indexOf(filter) > -1) {
li[i].style.display = "";
} else {
li[i].style.display = "none";
}
}
}
function itemfilter_filterItems(val) {
var attributes = ['type', 'subtype'];
var str = value.toLowerCase();
var items = document.querySelectorAll('#FilterUL li');
items.forEach(function(item) {
var check = false;
for (var i = 0; i < attributes.length; i++) {
var attribute_val = item.getAttribute('data-' + attributes[i]);
if (attribute_val && attribute_val.toLowerCase().includes(filterValue)) {
check = true;
break;
}
}
item.style.display = check ? 'block' : 'none';
});
}
document.getElementById('FilterInput').addEventListener('keydown change', function() {
itemfilter_filterItems(this.value);
});