怎么回事呢?function Bos()
{
this.Dothis = function(x)
{
var obj = document.getElementById(x);
this.t = 0;
gthis = this;
obj.onmouseout = function()
{
gthis.t = window.setInterval( function()
{
obj.innerHTML = Math.random().toString();
}, 1000);
};
obj.onmouseover = function()
{
window.clearInterval( gthis.t );
};
};
}var obj = new Bos();
obj.Dothis( "id1" );
var objx = new Bos();
obj.Dothis( "id2" );

解决方案 »

  1.   

    你操作的同一个dom对象啊   不很明白你的意思
      

  2.   


    var obj = new Bos();
    obj.Dothis( "id1" );
    var objx = new Bos();
    obj.Dothis( "id2" );
    两个不同DIV属性ID的东西。但第二个有效。第一个无效。
      

  3.   


    var obj = new Bos();
    obj.Dothis( "id1" );
    var objx = new Bos();
    obj.Dothis( "id2" );
    两个不同DIV属性ID的东西。但第二个有效。第一个无效。
    错了
    var obj = new Bos();
     obj.Dothis( "id1" );
     var objx = new Bos();
     objx.Dothis( "id2" );obj和objx会覆盖,objx执行后,obj不执行了。 
      

  4.   

    两个问题
    function Bos()
    {
        this.Dothis = function(x)
        {
            var obj = document.getElementById(x);
    console.log(obj);
            this.t = 0;
            var gthis = this; //如果不用var ,gthis就会定义到根对象也就是window上,那就成为单例了,
            obj.onmouseout = function()
            {
                gthis.t = window.setInterval( function()
                {
                    obj.innerHTML = Math.random().toString();
                }, 1000);
            };
            obj.onmouseover = function()
            {
                window.clearInterval( gthis.t );
            };
        };
    }
     
    var obj = new Bos();
    obj.Dothis( "id1" );
    var objx = new Bos();
    objx.Dothis( "id2" ); 
      

  5.   

    gthis = this;为什么?因为你您老没看书~~~var xxx 表示在当前区域内声明一个变量直接 xxx  表示访问window下的 xxx
    运行的时候 window只有一个