מדיה ויקי:Common.js: הבדלים בין גרסאות בדף
אין תקציר עריכה |
(הסקריפטים כלל לא מורצים) |
||
(8 גרסאות ביניים של אותו משתמש אינן מוצגות) | |||
שורה 1: | שורה 1: | ||
/* כל סקריפט JavaScript שנכתב כאן ירוץ עבור כל המשתמשים בכל טעינת עמוד */ | /* כל סקריפט JavaScript שנכתב כאן ירוץ עבור כל המשתמשים בכל טעינת עמוד */ | ||
window.addEventListener('load',function(){ | window.addEventListener('load', function () { | ||
// fixes a bug that doesn't allow registered users to edit pages normally | |||
var as = document.getElementsByTagName('a'), | |||
len = as.length, | |||
},false); | a; | ||
for (var i = 0; i < len; i++) { | |||
a = as[i]; | |||
if (a.href && a.href.indexOf('&action=edit') != -1 && a.href.indexOf('&internaledit=true') == -1) | |||
a.href += '&internaledit=true'; | |||
} | |||
// improves display of formulas: if a formula is preceded or followed by characters (such as punctuation marks), | |||
// there won't be any line breaks between the formula and the character. | |||
var e1, is1, e2, is2, con, par, texs = document.getElementsByClassName('tex'), tex; | |||
len = texs.length; | |||
for (var i = 0; i < len; i++) { | |||
tex = texs[i]; | |||
e1 = tex.previousSibling; | |||
is1 = Boolean(e1 && e1.nodeType == 3 && /\S$/.test(e1.data)); | |||
e2 = tex.nextSibling; | |||
is2 = Boolean(e2 && e2.nodeType == 3 && /^\S/.test(e2.data)); | |||
if (!is1 && !is2) | |||
continue; | |||
con = document.createElement('span'); | |||
con.style.display = 'inline-block'; | |||
if (is1) | |||
con.appendChild(e1.splitText(e1.data.search(/\S+$/))); | |||
if (is2) { | |||
e2 = e2.splitText(e2.data.search(/\s|$/)).previousSibling; | |||
con.appendChild(e2); | |||
} | |||
par = tex.parentNode; | |||
con.insertBefore(tex, is2 ? e2 : null); | |||
par.insertBefore(con, e1 ? e1.nextSibling : par.firstChild); | |||
} | |||
if (!document.getElementsByClassName) | |||
return; | |||
// improves the display of printable pages | |||
if (document.URL.indexOf('&printable=yes') != -1) { | |||
var e1 = document.getElementById('content').nextSibling, | |||
e2 = document.getElementById('bodyContent'); | |||
e2.removeChild(document.getElementsByClassName('printfooter')[0]); | |||
var id; | |||
for (var i = 0; i < 3; i++) { | |||
id = ['siteSub', 'contentSub', 'catlinks'][i]; | |||
e2.removeChild(document.getElementById(id)); | |||
} | |||
while (e1) { | |||
e2 = e1.nextSibling; | |||
document.body.removeChild(e1); | |||
e1 = e2; | |||
} | |||
} | |||
}, false); |
גרסה אחרונה מ־13:30, 2 בנובמבר 2012
/* כל סקריפט JavaScript שנכתב כאן ירוץ עבור כל המשתמשים בכל טעינת עמוד */ window.addEventListener('load', function () { // fixes a bug that doesn't allow registered users to edit pages normally var as = document.getElementsByTagName('a'), len = as.length, a; for (var i = 0; i < len; i++) { a = as[i]; if (a.href && a.href.indexOf('&action=edit') != -1 && a.href.indexOf('&internaledit=true') == -1) a.href += '&internaledit=true'; } // improves display of formulas: if a formula is preceded or followed by characters (such as punctuation marks), // there won't be any line breaks between the formula and the character. var e1, is1, e2, is2, con, par, texs = document.getElementsByClassName('tex'), tex; len = texs.length; for (var i = 0; i < len; i++) { tex = texs[i]; e1 = tex.previousSibling; is1 = Boolean(e1 && e1.nodeType == 3 && /\S$/.test(e1.data)); e2 = tex.nextSibling; is2 = Boolean(e2 && e2.nodeType == 3 && /^\S/.test(e2.data)); if (!is1 && !is2) continue; con = document.createElement('span'); con.style.display = 'inline-block'; if (is1) con.appendChild(e1.splitText(e1.data.search(/\S+$/))); if (is2) { e2 = e2.splitText(e2.data.search(/\s|$/)).previousSibling; con.appendChild(e2); } par = tex.parentNode; con.insertBefore(tex, is2 ? e2 : null); par.insertBefore(con, e1 ? e1.nextSibling : par.firstChild); } if (!document.getElementsByClassName) return; // improves the display of printable pages if (document.URL.indexOf('&printable=yes') != -1) { var e1 = document.getElementById('content').nextSibling, e2 = document.getElementById('bodyContent'); e2.removeChild(document.getElementsByClassName('printfooter')[0]); var id; for (var i = 0; i < 3; i++) { id = ['siteSub', 'contentSub', 'catlinks'][i]; e2.removeChild(document.getElementById(id)); } while (e1) { e2 = e1.nextSibling; document.body.removeChild(e1); e1 = e2; } } }, false);