NNでparentLayerを使う方法
[上に]
[前に]
[次に]
あや
[E-Mail]
1999/08/11(水) 15:34:52
「とほほのJavaScript入門」のparentLayerの記述に
document.layer.parentLayer
で親レイヤーが参照できるとありますが、
具体的にどういうふうに書けばいいのかわかりません。
やりたいことは、
入れ子レイヤーのbgcolor/visibilityの操作です。
そのためにある関数を用意し、
その関数にレイヤーの番号を引数として渡し、
そのレイヤーに親レイヤーが存在すれば、親レイヤーからたどって
子レイヤーのbgcolor/visibilityを操作しようとしています。
# 入れ子レイヤーは、親レイヤーからたどらないと
# プロパティ操作が行えないようなので
どうぞご教授下さい <(_ _)>
zizz...
[HomePage]
1999/08/11(水) 17:44:25
> その関数にレイヤーの番号を引数として渡し、
レイヤーの番号ってなんでしょうか?
期待したものと違うかもしれませんが、idからレイヤーを取り出す関数をつくってみました。
再帰的に合致するレイヤーを探していきます。
---------- ここから ---------
function getLayerById(id, lList) {
for(var i = 0; i < lList.length; i++) {
if(lList[i].id == id) {
return lList[i];
}
ns = lList[i].document.layers;
if(ns.length > 0) {
rValue = getLayerById(id, ns);
if(rValue) return rValue;
}
}
return null;
}
---------- ここまで ----------
どこかで聞いた事がありそうな名前の関数ですが。
使い方
var ns = document.layers;
foo = getLayerById("hoge", ns);
if(foo) foo.visibility = "show";
"hoge" という名前のレイヤーがなければ、fooにはnullが入ります。
あや
[E-Mail]
1999/08/12(木) 10:44:33
[[解決]]
やはりそういう方法しか残されてないんですね…
いったい何のためのparentLayerなんだろう (-_-;)
でも、ありがとうございました◎
[上に]
[前に]
[次に]