Dyskusja MediaWiki:Common.js

Treść strony nie jest dostępna w innych językach.
Z Wikipedii, wolnej encyklopedii

"Technical restrictions" title fix[edytuj kod]

W funkcji :

addOnloadHook(function() { }

Wywala się błąd ponieważ nie raz element pt-preferences nie istnieje i funkcja rzuca błędem. Proponuję dodać check'a

if(!document.getElementById('pr-preferences')) return;

---

Dodajcie ten fajny kodzik z enwiki. Do sztuczek ze zmianą tytułu. Frigglinn talk mail 15:49, 12 gru 2006 (CET)[odpowiedz]

Tyle kodu tylko po to, żeby zmienić jedną literkę? Nie widzę takiej potrzeby, ale oczywiście każdy może sobie dodać do swojego JS-a, jeśli widzi taką potrzebę. Nux (dyskusja) 13:33, 14 gru 2006 (CET).[odpowiedz]

Skrypcik jest już wprowadzony. Mi dalej wydaje się niezbyt potrzebny, ale narzucał swojego zdania nie będę. --Nux (dyskusja) 19:33, 27 gru 2006 (CET)[odpowiedz]

Small keyboard[edytuj kod]

Hello, I am q:af:Gebruiker:Adriaan from the Afrikaans Wikiquote. Our Wikiquote needs the small keyboard in our search page. We are testing this on Wikiquote before proposing it at Wikipedia. Can anybody please take a look at q:MediaWiki:Common.js and see what to change there to display the keyboard on the search page? Please leave any suggestions at q:af:MediaWikibespreking:Common.js. Any help will be extremely appreciated! Thanks :P41.241.171.81 21:46, 1 wrz 2007 (CEST)[odpowiedz]

Błąd w sortowaniu tabelek[edytuj kod]

Czy ktoś mógłby wstawić poniższy kod. To ma poprawić zgłoszony błąd.

/*
  Poprawka funkcji tabelkowych
*/
function ts_parseFloat(num) {
	if (!num) return 0;
	num = parseFloat(num.replace(/,/g, ".").replace(/[\xa0]/g, ""));
	return (isNaN(num) ? 0 : num);
}

function ts_resortTable(lnk) {
	// get the span
	var span = lnk.getElementsByTagName('span')[0];

	var td = lnk.parentNode;
	var tr = td.parentNode;
	var column = td.cellIndex;

	var table = tr.parentNode;
	while (table && !(table.tagName && table.tagName.toLowerCase() == 'table'))
		table = table.parentNode;
	if (!table) return;

	// Work out a type for the column
	if (table.rows.length <= 1) return;

	// Skip the first row if that's where the headings are
	var rowStart = (table.tHead && table.tHead.rows.length > 0 ? 0 : 1);

	var itm = "";
	for (var i = rowStart; i < table.rows.length; i++) {
		if (table.rows[i].cells.length > column) {
			itm = ts_getInnerText(table.rows[i].cells[column]);
			itm = itm.replace(/^[\s\xa0]+/, "").replace(/[\s\xa0]+$/, "");
			if (itm != "") break;
		}
	}

	sortfn = ts_sort_caseinsensitive;
	if (itm.match(/^\d\d[\/. -][a-zA-Z]{3}[\/. -]\d\d\d\d$/))
		sortfn = ts_sort_date;
	if (itm.match(/^\d\d[\/.-]\d\d[\/.-]\d\d\d\d$/))
		sortfn = ts_sort_date;
	if (itm.match(/^\d\d[\/.-]\d\d[\/.-]\d\d$/))
		sortfn = ts_sort_date;
	if (itm.match(/^[\u00a3$\u20ac]/)) // pound dollar euro
		sortfn = ts_sort_currency;
	if (itm.match(/^[\d.,\xa0]+\%?$/))
		sortfn = ts_sort_numeric;

	var reverse = (span.getAttribute("sortdir") == 'down');

	var newRows = new Array();
	for (var j = rowStart; j < table.rows.length; j++) {
		var row = table.rows[j];
		var keyText = ts_getInnerText(row.cells[column]);
		var oldIndex = (reverse ? -j : j);

		newRows[newRows.length] = new Array(row, keyText, oldIndex);
	}

	newRows.sort(sortfn);

	var arrowHTML;
	if (reverse) {
			arrowHTML = '<img src="'+ ts_image_path + ts_image_down + '" alt="↓"/>';
			newRows.reverse();
			span.setAttribute('sortdir','up');
	} else {
			arrowHTML = '<img src="'+ ts_image_path + ts_image_up + '" alt="↑"/>';
			span.setAttribute('sortdir','down');
	}

	// We appendChild rows that already exist to the tbody, so it moves them rather than creating new ones
	// don't do sortbottom rows
	for (var i = 0; i < newRows.length; i++) {
		if ((" "+newRows[i][0].className+" ").indexOf(" sortbottom ") == -1)
			table.tBodies[0].appendChild(newRows[i][0]);
	}
	// do sortbottom rows only
	for (var i = 0; i < newRows.length; i++) {
		if ((" "+newRows[i][0].className+" ").indexOf(" sortbottom ") != -1)
			table.tBodies[0].appendChild(newRows[i][0]);
	}

	// Delete any other arrows there may be showing
	var spans = getElementsByClassName(tr, "span", "sortarrow");
	for (var i = 0; i < spans.length; i++) {
		spans[i].innerHTML = '<img src="'+ ts_image_path + ts_image_none + '" alt="↓"/>';
	}
	span.innerHTML = arrowHTML;

	ts_alternate(table);		
}

Nux (dyskusja) 15:49, 15 wrz 2007 (CEST)[odpowiedz]

Sortowanie tabel nie działa. Na #wikimedia-tech, powiedzieli że jakiś kod JS wpływa na właściwy kod sortowania. Umie ktoś to naprawić? --Wyksztalcioch (Pytania? Sugestie?) 09:01, 19 lis 2008 (CET)[odpowiedz]
The problem is that the basecode has changed (f.ex ts_sort_caseinsesitive has been changed to ts_sort_generic) and you haven't updated your local version. I guess you have a special reason for having your own version of some of the functions, but then you'll have to be aware of these small changes as well. Stigmj (dyskusja) 09:22, 19 lis 2008 (CET)[odpowiedz]

ts_parseFloat()[edytuj kod]

Polskie sortowanie w tabelach[edytuj kod]

Uprzejmie proszę o dodanie do strony Mediawiki:Common.js poniższego kodu:

// Sortowanie testów w tabelach (po stronie klienta, tj. przeglądarki) uwzględniające polskie diakrytyki
// https://www.mediawiki.org/wiki/Special:Code/MediaWiki/86088
   var tableSorterCollation={'ą':'azz',  'Ą':'AZZ', 
                             'ć':'czz',  'Ć':'CZZ', 
                             'ę':'ezz',  'Ę':'EZZ', 
                             'ł':'lzz',  'Ł':'LZZ', 
                             'ń':'nzz',  'Ń':'NZZ', 
                             'ó':'ozz',  'Ó':'OZZ', 
                             'ś':'szz',  'Ś':'SZZ', 
                             'ź':'zzz',  'Ź':'ZZZ', 
                             'ż':'zzzz', 'Ż':'ZZZZ'};

Działanie przetestowane na moim common.js (W'7 - O 11.62, FF 17.0.1, IE 9.0). Pozwala - po stronie klienta, czyli przeglądarki - na sortowanie testów w tabelach zgodnie z polską ortografią, co do tej pory nie było możliwe. Po ewentualnych dodatkowych testach proszę też o rozpropagowanie rozwiązania na pozostałe polskojęzyczne przedsięwzięcia Wikimedia. Dziękuję. Ency (replika?) 15:21, 28 gru 2012 (CET)[odpowiedz]

Zrobione. Matma Rex dyskusja 06:45, 29 gru 2012 (CET)[odpowiedz]
:-) . Ency (replika?) 08:27, 29 gru 2012 (CET)[odpowiedz]
A jakie, Królu Matmy, jest poprawne rozwiązanie sortowania po "polskiemu" po stronie przeglądarki? Z uszanowaniem, Ency (replika?) 12:15, 29 gru 2012 (CET)[odpowiedz]
Jakaś odpowiedź? Ency (replika?) 21:56, 9 sty 2013 (CET)[odpowiedz]
O przepraszam, umknął mi ten wpis (za dużo obserwowanych...). Chodzi mi o to, że ta wersja źle posortuje na przykład „ąb” i „azzc” (ten pierwszy ciąg będzie wcześniej niż ten drugi, a powinno być odwrotnie). Oczywiście we wszystkich praktycznych przypadkach bez powtarzających się „zetów” jest w porządku. W pełni poprawnym i prawidłowym rozwiązaniem byłoby użycie algorytmu porównywania ciągów Unicode wraz z tailoringiem dla języka polskiego, natomiast nie słyszałem jeszcze o żadnej implementacji tego potwora w JavaScripcie. Matma Rex dyskusja 23:10, 9 sty 2013 (CET)[odpowiedz]
Jasne. Przerzucanie na klienta metody do udźwignięcia przez serwer jest abstrakcją. Jedyną sensowną drogą jest pragmatyczne obejście - to jak wyżej. Co do "zz", to masz rację, przemyślę to, mam już pewną koncepcję, ale muszę ją potestować. Z uszanowaniem, Ency (replika?) 16:12, 23 sty 2013 (CET)[odpowiedz]

Błędna wskazówka[edytuj kod]

Opis "Opera: Wyczyść pamięć podręczną w Narzędzia → Preferencje" nie pasuje co najmniej do Opery 11. W tej wersji należy kliknąć zakładkę "Opera", wybrać pozycję "Ustawienia/Preferencje", następnie kartę "Zaawansowane", po czym wybrać pozycję "Historia" z menu i kliknąć przycisk "Opróżnij teraz" z prawej strony okna. Z uszanowaniem, Ency (replika?) 15:34, 28 gru 2012 (CET)[odpowiedz]

Właściwie to można to też zrobić z Settings → Delete Private Data... (albo Tools → Delete Private Data... na rozwiniętym menu), ten sposób wydaje mi się prostszy. Nie mam w tej chwili pod ręką polskiej wersji, mógłbyś napisać, jak to jest przetłumaczone? Swoją drogą, taki sam niepoprawny komunikat jest po angielsku, trzeba by zgłosić buga (albo poprawić). Matma Rex dyskusja 06:50, 29 gru 2012 (CET)[odpowiedz]
Ustawienia → Wyczyść historię przeglądania… (a z paskiem menu to Narzędzia → Wyczyść historię przeglądania…) --WTM (dyskusja) 07:37, 29 gru 2012 (CET)[odpowiedz]
Faktycznie, zaglądałem tam, choć termin "pamięć podręczna" niezbyt intuicyjnie się kojarzy z historią przeglądania, i nie zauważyłem, że spośród 15 pól wyboru jest jednak jedno związane z pamięcią podręczną. Tym bardziej trzeba to opisać. Z uszanowaniem, Ency (replika?) 08:27, 29 gru 2012 (CET)[odpowiedz]

Niesortująca się kolumna z liczbą porządkową w sortowalnych tabelkach[edytuj kod]

th.column (linia 429) zwraca wartość undefined, wyrzucając błąd po każdej próbie posortowania tabelki (przykłady). Ping dla autora. Pozdrawiam, Peter Bowman (dyskusja) 14:08, 25 gru 2014 (CET)[odpowiedz]

Ewentualnie można by to rozwiązać za pomocą CSS3 zgodnie z sugestią w phab:T42618#434018 (kod, przykład). Peter Bowman (dyskusja) 14:30, 25 gru 2014 (CET)[odpowiedz]
Hm, ciekawe, czemu to w ogóle kiedykolwiek działało… ale teraz już działa chyba. Matma Rex dyskusja 17:00, 25 gru 2014 (CET)[odpowiedz]

Skrypt do {{Duża grafika}}[edytuj kod]

Witam! Przed chwilą wymyśliłem krótki skrypt, który dodaje ikonkę do powiększenia obrazu () na panoramach:

panoramaThumbInner = $('.noresize').parent();
panoramaThumbInner.each(function(n, el){
	linkHref = $(el).children('.noresize').children('a').attr('href');
	if (!$(el).children('.thumbcaption').length)
		$(el).append('<div class="thumbcaption"></div>');
	$(el).children(".thumbcaption").prepend(
		'<div class="magnify"><a href="' + linkHref + '" class="internal" title="Powiększ"></a></div>'
	);
});

Testowałem go na swoim common.js, więc według mnie, powinien działać.

ToasterCoder (dyskusja) 22:42, 30 kwi 2021 (CEST)[odpowiedz]

Jeśli skrypt nadaje się do commons.js, proszę go tam umieścić. Z góry dziękuję.
ToasterCoder (dyskusja) 22:44, 30 kwi 2021 (CEST)[odpowiedz]

unsortable ordinal, znikające kropki[edytuj kod]

Jeśli liczba w kolumnie unsortable ordinal ma kropkę, znika ona po posortowaniu dowolnej innej kolumny.

Kontekst i pseudokod rozwiązania: Dyskusja_szablonu:Numerowanie_w_tabeli MarMi wiki (dyskusja) 12:21, 28 wrz 2021 (CEST)[odpowiedz]

Prepare for T314318[edytuj kod]

Please make a change like the following,

https://it.wikipedia.org/w/index.php?title=MediaWiki%3ACommon.js&type=revision&diff=130157033&oldid=127743689

For more information, see mw:Parsoid/Parser_Unification/Media_structure/FAQ

Thanks, Arlolra (dyskusja) 21:40, 31 sty 2023 (CET)[odpowiedz]

Załatwione Matma Rex dyskusja 00:28, 2 lut 2023 (CET)[odpowiedz]