<SPAN>タグにIDを指定して、getElementByIDで呼び出して、<SPAN>タグが適用されているテキスト内容を書き換えたいのですが。

<SPAN>タグが同一フレーム内にあれば、
document.getElementById("idname").firstChild.nodeValue="書き換えるテキスト"
で、変わるのですが。

書き換えたいIDを持つテキストが別のフレームにある場合、その指定方法がわかりません。
普通のフレーム指定なら、
documentで始める代わりに、parent.framename だと思ったので、やってみたのですが、どうもエラーが返ってきて動きません。
使っているブラウザはインターネットエクスプローラ5とネットスケープ6です。

どなたかわかる方、教えてください。
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

getElementByIdメソッドはdocumentオブジェクトの(正確にはHTMLDocumentインターフェースの)メソッドですから、


フレームを指定するparent.framenameにそのようなメソッドはありません。
この場合、
parent.framename.document.getElementById()
とします。
    • good
    • 0
この回答へのお礼

お礼が遅くなり、申し訳ありません。
parent.framename.document.getElementById() として、
getElementById() の()にIDを入れれば、良いということですね?
ありがとうございました。試してみます。

お礼日時:2002/04/01 23:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qタグをでくくりたい

Javascript初心者を脱出したい者です。

<img>タグをgetElementsByTagNameで取得し、
<span class="align_left"><img .... /></span> みたいに囲いたいと考えています。

条件として、<img>タグの親ノードは<p>タグです。
全くノウハウは知りませんが、以下のような考え方で実現できるのでしょうか?

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Insert nextContent</title>
<script type="text/javascript">
<!--
  window.onload = function() {
    var out_span = document.createElement('span');
    out_span.setAttribute('class', 'align_left');

    var list = document.getElementsByTagName('img');
    var img = list[0];
    /* この後、
      どうやって、out_span を挿入すればよいのか?
     */
  }
//-->
</script>
</head>
<body>
<h1> IMGタグに親ノードを追加したい </h1>
<p>
文ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー。
<img src="../images/logo.gif" alt="Logo" />
</p>
</body>
</html>

★ インデントは全角スペースで行っております。

ご教示お願いします。

Javascript初心者を脱出したい者です。

<img>タグをgetElementsByTagNameで取得し、
<span class="align_left"><img .... /></span> みたいに囲いたいと考えています。

条件として、<img>タグの親ノードは<p>タグです。
全くノウハウは知りませんが、以下のような考え方で実現できるのでしょうか?

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Insert nextContent</title>
<script type="text/javascript">
<!--
  window.onload = function() {
    v...続きを読む

Aベストアンサー

// この後...
out_span.appendChild(img.parentNode.replaceChild(out_span, img));

nodeObject.parentNode
http://www2u.biglobe.ne.jp/~oz-07ams/prog/dom-ref/Core/Node.html#Node-parentNode
nodeObject.replaceChild( newChild, oldChild )
http://www2u.biglobe.ne.jp/~oz-07ams/prog/dom-ref/Core/Node.html#Node-replaceChild
nodeObject.appendChild( newChild )
http://www2u.biglobe.ne.jp/~oz-07ams/prog/dom-ref/Core/Node.html#Node-appendChild

Qタグを書き換えたい

やりたいことは、
<body>タグ以降で、
window.load = test();
のスクリプトを書き、

test()の中で、<body>タグの中身を書き変えたいです。

<body> ⇒ <body onmouseover="test2()">としたいです。

タグに要素を追加する関数や、ごっそり入れ替えてしまう関数などあったら教えてください。

最初から<body>タグに書ければいいのですが、どうしても<body>タグ以降で対応するしか無い状況です。。。

Aベストアンサー

なんかまわりくどいですね・・・
以下でどうでしょうか?

<body>
test
<script>
window.onload = test;
function test(){
document.getElementsByTagName("body")[0].onmouseover=test2;
}
function test2(){
document.getElementsByTagName("body")[0].style.backgroundColor="yellow";
}
</script>
</body>

Q

数十の<a>タグがあるHTMLファイルの中で、
<div id="blank">で囲まれた<a>タグ群のみをすべてtarget="_blank"にしたいと考えています。
該当する<a>タグすべてにtarget="_blank"を書くと、HTMLファイルの容量が大きくなるので、CSSのIDとJavaScriptを組み合わせて、実現できないものでしょうか。

Aベストアンサー

<base target="_blank">
<div id="blank">
 <!-- -->
</div>
<base target="_self">

Qタグのテキストを取得

jqueryを使っています。

$('a');を使用しページ内のaタグを全て抜き出すと
hrefの属性値が表示されてしまい、取り出したい<a>タグに
囲まれたテキストを取得することが出来ません。

<a href="http://yahoo.co.jp">Yahoo!</a>
<a href="http://google.co.jp">Google</a>

取り出したい内容は「Yahoo!」及び「Google」のテキスト部分です。
恐らく簡単な内容だとは思いますがご教授お願い出来ますでしょうか?

Aベストアンサー

アンカーに挟まれるのは必ずしもテキストとは限りません。
javascriptで普通にとるならこんなやりかたもできます。

<script>
function check(){
var a=document.getElementsByTagName("a");
for(var i=0;i<a.length;i++){
var n=a[i].firstChild;
while(n){
if(n.nodeName=="#text") alert(n.nodeValue);
n=n.nextSibling;
}
}
}
</script>
<a href="http://yahoo.co.jp">Yahoo!<img src="1.jpg">Yohaa!</a>
<a href="http://google.co.jp">Google</a>

<input type="button" value="check" onclick="check()" />

Qdocument.getElementById

document.getElementByIdでURLを変数に代入したいのですが
うまくリンクになりません。

どこが間違っているのでしょうか?
どうしたらよいのでしょうか?

ソースはこちらです



<!DOCTYPE html>
<html lang="ja">
<head>
<script language="JavaScript" type="text/javascript">
var url = 'http://www.goo.ne.jp/';
var urlgoo = document.getElementById("urlgoo").src = url;
</script>
</head>
<body>
<a id="urlgoo" title="sample">Link</a>
</body>
</html>

Aベストアンサー

注意したい点が2つあります。

1. <a>タグのリンク先はsrc属性ではなくhref属性で指定します。

2. ブラウザは、スクリプトやタグを「読み込み順に解析しながら」表示・実行していきます。
ブラウザが「var urlgoo = document.getElementById~」を実行する段階ではまだ「<a id="urlgoo" ~」の存在を知らないため、
document.getElementById("urlgoo")はnullが返ってきます。
ですから、スクリプトの位置をソースの最後の方に移動するか、window.onloadイベントを活用する事で
「<a id="urlgoo" ~」の解析が終わった後にスクリプトが実行されるようにする必要があります。


人気Q&Aランキング

おすすめ情報