From d1343b844d96e808620a230ee8f39764acedb581 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 25 Jun 2013 01:35:07 +0400 Subject: [PATCH] make floating title less cpu intensive --- js/viewfeed.js | 32 +++++++++++++------------------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/js/viewfeed.js b/js/viewfeed.js index 84230f61a..9c48fbcdb 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -2216,30 +2216,24 @@ function openSelectedAttachment(elem) { function updateFloatingTitle() { try { var hf = $("headlines-frame"); + var child = $("RROW-" + _active_article_id); - var elems = $$("#headlines-frame > div[id*=RROW]"); + if (child && child.offsetTop + child.offsetHeight > hf.scrollTop) { - for (var i = 0; i < elems.length; i++) { - var child = elems[i]; + var header = child.getElementsByClassName("cdmHeader")[0]; - if (child.offsetTop + child.offsetHeight > hf.scrollTop) { - - var header = child.getElementsByClassName("cdmHeader")[0]; - - if (child.id != $("floatingTitle").getAttribute("rowid")) { - $("floatingTitle").setAttribute("rowid", child.id); - $("floatingTitle").innerHTML = header.innerHTML; - } - - if (child.offsetTop < hf.scrollTop - header.offsetHeight - 100 && - child.offsetTop + child.offsetHeight - hf.scrollTop > 100) - Element.show("floatingTitle"); - else - Element.hide("floatingTitle"); - - break; + if (child.id != $("floatingTitle").getAttribute("rowid")) { + $("floatingTitle").setAttribute("rowid", child.id); + $("floatingTitle").innerHTML = header.innerHTML; } + + if (child.offsetTop < hf.scrollTop - header.offsetHeight - 100 && + child.offsetTop + child.offsetHeight - hf.scrollTop > 100) + Element.show("floatingTitle"); + else + Element.hide("floatingTitle"); } + } catch (e) { exception_error("updateFloatingTitle", e); }