首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TypeError:尝试更改iframe不可配置属性的可配置属性

TypeError:尝试更改iframe不可配置属性的可配置属性
EN

Stack Overflow用户
提问于 2018-05-07 16:55:03
回答 1查看 7.3K关注 0票数 0

当在chrome,firefox中执行下面的代码时,不会出现错误。但是safari抛出了TypeError:试图更改不可配置属性的可配置属性。我不明白src是否是不可配置的,那么为什么chrome和firefox没有出现错误。

代码语言:javascript
复制
Object.defineProperty(iframe, 'src', {
    writable: false, configurable: true
});

Safari版本11.0.1

PS -我知道更改现有的不可配置属性会引发此错误,但是为什么不是chrome和firefox?

EN

回答 1

Stack Overflow用户

发布于 2018-05-07 16:57:01

我不明白src是否是不可配置的,那么为什么chrome和firefox不出错呢?

因为不同的浏览器以不同的方式实现DOM。看起来Chrome和火狐并没有标记src不可配置。很明显是野生动物。还请注意,至少在Chrome上,src属性是继承的,并且具有getter/setter,因此对iframe实例调用defineProperty将在该实例上创建一个新属性,而不是修改以前从原型继承的属性的行为。(我没有检查Firefox或Safari。)

如果您希望与Safari兼容,则需要以不同的方式处理基本需求。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50219059

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档