鱼C论坛

 找回密码
 立即注册
查看: 5105|回复: 3

[已解决]函数继承后修改属性的问题

[复制链接]
发表于 2021-4-16 18:05:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 qpwoeiruyt 于 2021-4-16 11:07 编辑

function Sprite(imgPath = "", insideDOM = window.document.getElementById("playground")) {
            this.pos = Position(0, 0);
            let img = document.createElement("img");
            img.setAttribute('style', 'top:0px;left:0px;transition:all 1s');
            img.setAttribute('src', imgPath);

            insideDOM.appendChild(img);
            this.img = img;
            this.speedX = 0;
            this.speedY = 0;
        }


function NPC1(imgPath = "x_wing.png", insideDOM = window.document.getElementById("playground")) {
            Sprite.call(this, imgPath, insideDOM);
        };
        NPC1.prototype = new Sprite();
        NPC1.prototype.constructor = NPC1;

        请问这里如何改变生产图片的位置呢?NPC1 继承了Sprite函数生成图片的位置 , 除了直接在上面Sprite的函数中修改 。
       
        NPC1.img.setAttribute('style', 'left:110px');  //这方法报错
最佳答案
2021-4-16 19:23:31
qpwoeiruyt 发表于 2021-4-16 18:36
如果我没在sprite函数设置img 的style 。 那我还能不能在NPC1 函数里面设置img的style ?

再写个类 继承之后派生一个修改属性的方法  直接修改也行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-4-16 18:28:29 | 显示全部楼层
img是实例的属性 只有实例.img.setAttribute('style', 'left:110px')可以修改位置
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-16 18:36:21 | 显示全部楼层
kogawananari 发表于 2021-4-16 11:28
img是实例的属性 只有实例.img.setAttribute('style', 'left:110px')可以修改位置

如果我没在sprite函数设置img 的style 。 那我还能不能在NPC1 函数里面设置img的style ?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-16 19:23:31 | 显示全部楼层    本楼为最佳答案   
qpwoeiruyt 发表于 2021-4-16 18:36
如果我没在sprite函数设置img 的style 。 那我还能不能在NPC1 函数里面设置img的style ?

再写个类 继承之后派生一个修改属性的方法  直接修改也行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 20:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表