2

このコードにより、IE6 の 10 行目でエラーが発生します。あれは、var ref = ...;

ここでのエラーは何ですか?

<html>
<head>
 <title>JavaScript Popup Example 3</title>
</head>
<SCRIPT language="JavaScript1.2">
function MyClass()
{
    this.OpenWindow = function()
    {
        var ref = window.open ("http://www.google.com", "mywindow", "location=1,status=1,scrollbars=1,width=100,height=100");
        ref.moveTo(0,0);
    }

}
</SCRIPT>
<body onload="javascript: new MyClass().OpenWindow()">
<H1>JavaScript Popup Example 3</H1>
</body>
</html> 

メッセージ:

A run-time error has occurred. 
Do you wish to debug? 

Line:10
Error: Access is denied
4

2 に答える 2

6

When you open a window with a page from a different domain, you don't get a reference to the window back. The ref variable is null.

If you want to move the window, you have to open it without a page, move it, then load the page in it:

var r = window.open ('', 'mywindow', 'location=1,status=1,scrollbars=1,width=100,height=100');
r.moveTo(0,0);
r.location.href = 'http://www.google.com';
于 2009-11-29T14:47:11.173 に答える
0

問題はここにあります - ref.moveTo(0,0); - ほとんどのセキュリティ設定では、このアクションは利用できません

また、javascript: onload はラベル「javascript」を作成するだけです

<html>
<head>
 <title>JavaScript Popup Example 3</title>
</head>
<SCRIPT language="JavaScript">
function MyClass()
{
    this.OpenWindow = function()
    {
        var ref = window.open("http://www.google.com", "mywindow", "location=1,status=1,scrollbars=1,width=100,height=100");
        ref.moveTo(0,0);
    }

}
</SCRIPT>
<body onload="new MyClass().OpenWindow()">
<H1>JavaScript Popup Example 3</H1>
</body>
</html>
于 2009-11-29T14:42:15.990 に答える