dポイントプレゼントキャンペーン実施中!

以下の場合、opentext を直接開けば普通に開くのですが、
getPage で開くとエラーになってしまいます。
いろいろ試した結果 event.clientX がある場合エラーになるようです。
エラーがなく表示できるようになりませんでしょうか。

(文字数制限のためDIVタグ省略)
function opentext(settxt){
divid="tiptext";
if(document.all){
d_div=document.all(divid);
rx = event.clientX + document.body.scrollLeft +set_x;
//rx = 100;
ry = event.clientY + document.body.scrollTop +set_y;
//ry = 100;
}else{
d_div=document.getElementById(divid);
rx = NNX + set_x;
ry = NNY + set_y;
}
if(settxt){
d_div.style.display="block";
d_div.style.left = rx +"px";
d_div.style.top = ry +"px";
d_div.innerHTML = settxt;
}else{
d_div.style.display="none";
d_div.innerHTML = ""; }
}
function MouseXY(NNevent){
NNX = NNevent.pageX;
NNY = NNevent.pageY;
}
window.onmousemove = MouseXY;/* himajin.moo.jp */


function getPage(pageURL) {
xmlhttp = createXMLHttp();
if (xmlhttp)
{
xmlhttp.onreadystatechange = setPageData;
xmlhttp.open('GET', pageURL);
xmlhttp.send(null);
}else{
alert("XMLHttpRequest失敗");
}
}
function setPageData()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
//alert("XMLHttpRequest成功");
opentext([xmlhttp.responseText]);
}
}
// XMLHttpsオブジェクト作成
function createXMLHttp()
{
try {
return new ActiveXObject ("Microsoft.XMLHTTP");
}catch(e){
try {
return new XMLHttpRequest();
}catch(e) {
return null;
}
}
return null;
}

A 回答 (2件)

>「関数」とはgetPageのことでしょうか?


>getPage を呼んだときに 変数などに event.clientX をいれておけばよいのでしょうか?

それでいいと思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
getPageでevent.clientXを取り、
opentextを呼び出すときに、一緒に値を受け渡すように変更したところ、思い通りの動作ができました。

ありがとうございました。

お礼日時:2006/01/26 10:46

getPageから呼んだ場合は、opentextは唯の関数として呼ばれるのでeventがとれません。


関数を呼んだときのeventを、どこか退避しておけばいいでしょう。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

だた、不明点がございます。
「退避」とは具体的にどのようなことを指していらっしゃいますか?
「関数」とはgetPageのことでしょうか?
getPage を呼んだときに 変数などに event.clientX をいれておけばよいのでしょうか?


よろしくお願いします。

お礼日時:2006/01/24 16:41

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