我正在尝试在类型记录中实例化新的HTMLDivElement

var elem = new HTMLDivElement();

但是浏览器抛出

Uncaught TypeError: Illegal constructor.

解决办法似乎是使用

var elem = document.createElement('div');

但我觉得这不太理想是因为各种原因。

当有一个DOM元素时,为什么不能直接实例化DOM元素?中的关键字for inlib.d.ts?

declare var HTMLDivElement: {
    prototype: HTMLDivElement;
    new (): HTMLDivElement;
}
Smile淡莣YKSmile淡莣YK提问于
1098480274学生回答于
已采纳

表上基本上有三种选择:

  1. 从DOM元素中删除构造签名,并删除instanceof是右操作数。这是不可取的,因为您确实更希望捕获错误,在这些错误中,有人意外地编写了代码x instanceof foo而不是x instanceof Foo(在哪里fooFoo)
  2. 从DOM元素中删除构造签名,但保留instanceof检查就位。这很糟糕,因为foo instanceof HTMLElement写起来很合理。
  3. 当前的情况,其中存在构造函数,但您必须知道不要调用它们。

不能使用普通构造函数构造DOM元素,因为您应该通过document.createElement

回答过的其他问题

TensorFlow有哪些应用实践?

可以在其上构建其他的机器学习算法,比如决策树或k近邻。下面是一个由TensorFlow组成的生态系统: 📷 从上面的描述可以看出,TensorFlow可集成性良好,具有包括GPU处理、python和Cpp在内的依赖关系,也可以使用它与docker等容器软件集成... 展开详请

活动防刷是如何实现的?

对抗刷单,一般来讲主要从三个环节入手: 注册环节:识别虚假注册、减少“羊毛党”能够使用的账号量。在注册环节识别虚假注册的账号,并进行拦截和打击。 登录场景:提高虚假账号登录门槛,从而减少能够到达活动环节的虚假账号量。比如,登录环节通过验证码、短信验证码等手段来降低自动机的登录效率...... 展开详请

Mockito+PowerMock LinkageError同时模拟系统类

已采纳

尝试将此注释添加到Test类中:

@PowerMockIgnore("javax.management.*")

如何使用IntelliJ快捷方式将Runnable更改为Java中的lambda表达式

已采纳

让IntelliJ在这里举起; 你可以调用Alt+ Enter(或Mac上的Option+ Return)来允许IntelliJ用lambda表达式替换它。

Python请求-No connection adapters问题怎么解决?

已采纳

需要包括协议方案:

'http://192.168.1.61:8080/api/call'

没有http://部分,requests不知道如何连接到远程服务器。

正确加入Linq,没有返回正确的值

以下是Right Outer Join的IQueryable实现: private static Expression<Func<TP, TC, TResult>> CastSMBody<TP, TC, TResult>(LambdaExpression ex, TP unus...... 展开详请

所属标签

扫码关注云+社区