相关疑难解决方法(0)

你能在TypeScript中扩展HTMLDivElement吗?

我是第一次制作基于DOM的游戏.我想扩展HTMLDivElement,但是在TypeScript中,HTMLDivElement是一个接口.

我想做这个伪类:

class QuizElement extends HTMLDivElement{

}
Run Code Online (Sandbox Code Playgroud)

对不起,如果这个问题很疯狂.我对DOM有些新意,只是想,我可以在任何其他环境中扩展任何视觉类,所以我想这里可行!

typescript

10
推荐指数
3
解决办法
6762
查看次数

从(扩展)HTML元素中进行子类化?

如果我可以创建自己的扩展HTML元素类的类,例如HTMLDivElement或HTMLImageElement,我会喜欢它.

假设标准继承模式:

// class A:

function ClassA(foo) {
    this.foo = foo;
}

ClassA.prototype.toString = function() {
    return "My foo is " + this.foo;
};

// class B:

function ClassB(foo, bar) {
    ClassA.call(this, foo);
    this.bar = bar;
}

ClassB.prototype = new ClassA();

ClassB.prototype.toString = function() {
    return "My foo/bar is " + this.foo + "/" + this.bar;
};
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚构造函数中要调用的内容:

function Image2() {
    // this doesn't work:
    Image2.prototype.constructor.call(this);
    // neither does this (only applies to <img>, no equivalent for <span> etc.):
    Image.call(this); …
Run Code Online (Sandbox Code Playgroud)

html javascript dom

7
推荐指数
2
解决办法
6769
查看次数

在ES5(而不是ES6)中创建自定义元素v1

现在,如果您遵循自定义元素specv1的确切规范,则不可能在不支持类的浏览器中使用自定义元素。

有没有一种方法可以创建v1自定义元素而不使用类语法,以使它们在Chrome,FireFox和IE11中完全起作用。另外,由于IE11不对自定义元素提供本机支持,所以我假设我们可能需要使用一些pollyfills,那么,为了在IE11中实现此功能,我们需要哪些polyfills或库?

我已经弄乱了Polymer 2,Polymer 3和Stencil,但是它们对于我们要创建的某些东西来说有点繁重。

这个问题似乎是在正确的轨道上,但是让它在IE11中工作时遇到了一些麻烦,因此,如何才能在IE11中使用Reflect.construct来实现自定义元素?

javascript web-component ecmascript-5 native-web-component

3
推荐指数
1
解决办法
1373
查看次数