משתמש:Yova/common.js/lineNumbering.js

מתוך ויקיפדיה, האנציקלופדיה החופשית

הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
//יוצר: [[משתמש:Yova|Yova]]
//יעוד: הוספת מספור שורות לטקסט

if (wgNamespaceNumber==0) $(document).ready(function ()
{
	var currentLineNum = 0;
	var notTable = $('.mw-content-rtl').children().not('table');
	$('.mw-content-rtl').children('p').add($(notTable).find('dd,p,li')).each(function(i)
	{
		if ($(this).html().indexOf('<br>') != 0)
		{
			if (!$(this).parent().is('td') && !$(this).parent().parent().is('td'))
			{
				var top = 0;
				if ($(this).is('p'))
				{
					top = 5;
				}
				currentLineNum += setLinesNumber(this, currentLineNum, top);
			}
		}
	});
});

function setLinesNumber(element, from, topPlus)
{
	var lineNum = Math.floor($(element).height()/parseInt($(element).css('line-height').substring(0, $(element).css('line-height').length-2)));

	for (var i = 0; i<lineNum; i++)
	{
		var corLeft = 835;
		var corTop = $(element).position().top+topPlus+(parseInt($(element).css('line-height').substring(0, $(element).css('line-height').length-2))*i);
		$('<div style="float: left; left: '+corLeft+'px; font-size: 10px; position: absolute; top: '+corTop+'px;">'+(from+i+1)+'</div>').insertBefore($(element));
		if ($(element).is('p'))
		{
			topPlus = 5;
		}
	}
	return lineNum;
}