summaryrefslogtreecommitdiff
path: root/lib/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'lib/scripts')
-rw-r--r--lib/scripts/script.js9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/scripts/script.js b/lib/scripts/script.js
index 032741397..418d2f069 100644
--- a/lib/scripts/script.js
+++ b/lib/scripts/script.js
@@ -557,6 +557,7 @@ addInitEvent(function(){
* @author Andreas Gohr <andi@splitbrain.org>
*/
addInitEvent(function(){
+ var highlightorfinish = new RegExp('DIV|H[123]');
var btns = getElementsByClass('btn_secedit',document,'form');
for(var i=0; i<btns.length; i++){
addEvent(btns[i],'mouseover',function(e){
@@ -564,8 +565,12 @@ addInitEvent(function(){
if(tgt.form) tgt = tgt.form;
tgt = tgt.parentNode.previousSibling;
if(tgt.nodeName != "DIV") tgt = tgt.previousSibling;
- if(tgt.nodeName != "DIV") return;
- tgt.className += ' section_highlight';
+ while(tgt.nodeName == 'DIV') {
+ tgt.className += ' section_highlight';
+ do {
+ tgt = (tgt.previousSibling != null) ? tgt.previousSibling : tgt.parentNode;
+ } while (!highlightorfinish.test(tgt.nodeName));
+ }
});
addEvent(btns[i],'mouseout',function(e){