OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /v/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-meta Date: 11-Mar-2006 14:08:18
Branch: HEAD Handle: 2006031113081700
Modified files:
openpkg-meta canvas-nav-bar.php
Log:
fix navigation bar dynamic processing
Summary:
Revision Changes Path
1.9 +19 -17 openpkg-meta/canvas-nav-bar.php
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-meta/canvas-nav-bar.php
============================================================================
$ cvs diff -u -r1.8 -r1.9 canvas-nav-bar.php
--- openpkg-meta/canvas-nav-bar.php 9 Mar 2006 19:12:10 -0000 1.8
+++ openpkg-meta/canvas-nav-bar.php 11 Mar 2006 13:08:17 -0000 1.9
@@ -89,21 +89,12 @@
}
$html = implode("\n", $html);
$html = preg_replace("/(<li id=\"navbar.$path\")/s", "$1
class=\"active\"", $html);
- #$html = preg_replace("/(<li id=\"(.+?)\"[^>]*><a)/s", "$1
onMouseOver=\"navbar_over('$2'); return true;\" onMouseOut=\"navbar_out('$2');
return true;\"", $html);
divert("canvas-nav");
echo "<div class=\"navbar\" id=\"navbar\">\n";
echo $html;
echo "</div>\n";
</script>
-<script type="text/javascript">
-var nodes = DOM.getNode("DIV.navbar LI");
-for (var i = 0; i < nodes.length; i++) {
- DOM.setEvent(nodes[i], "mouseover", navbar_over, nodes[i].id, true); /*
"navbar_over('"+nodes[i].id+"'); return true;"); */
- DOM.setEvent(nodes[i], "mouseout", navbar_out, nodes[i].id, true); /*
('"+nodes[i].id+"'); return true;"); */
-}
-</script>
-
<script language="php">
divert("js");
</script>
@@ -133,19 +124,19 @@
var navbar_default = "<script language="php">echo "navbar.".$path</script>";
var navbar_active = navbar_default;
-function navbar_over (id) {
- /* var el = document.getElementById(id).getElementsByTagName('a')[0]; */
- var el = document.getElementById(this).getElementsByTagName('a')[0];
+function navbar_over (e) {
+ var id = this;
+ var el = document.getElementById(id).getElementsByTagName('a')[0];
window.status = el.href;
navbar_active = id;
defer_cancel("navbar_out");
defer_schedule("navbar_over", "navbar_update();", 800);
}
-function navbar_out (id) {
+function navbar_out (e) {
+ var id = this;
window.status = "";
- /* defer_schedule("navbar_out", "navbar_out_stage2('"+id+"');", 4000); */
- defer_schedule("navbar_out", "navbar_out_stage2('"+this+"');", 4000);
+ defer_schedule("navbar_out", "navbar_out_stage2('"+id+"');", 4000);
}
function navbar_out_stage2 (id) {
@@ -156,8 +147,6 @@
}
function navbar_update () {
- if (!document.getElementById)
- return;
var active_a = navbar_active.split(".");
active_a.pop();
var active_prefix = active_a.join(".");
@@ -180,3 +169,16 @@
return;
}
+/* DOM event activation */
+
+function nav_bar_setevents(e) {
+ var nodes = DOM.getNode("DIV.navbar LI");
+ for (var i = 0; i < nodes.length; i++) {
+ var anchor = DOM.getNode("A", nodes[i])[0];
+ DOM.setEvent(anchor, "mouseover", navbar_over, nodes[i].id, true);
+ DOM.setEvent(anchor, "mouseout", navbar_out, nodes[i].id, true);
+ }
+}
+
+DOM.setEvent(window, "load", nav_bar_setevents);
+
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [email protected]