不是在 Mozilla,而是:
图片:选项:鉴于这些引用资料,mozilla.org 是否有相同的文档是没有意义的,如下所述。
具体来说,在 mozilla.org 中,new Image() 和 new Option() 等构造函数在现代语境中有哪些记录?
古代 documentation ,
Image() 定义于 http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/reference/image.html Option() 定义于 http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/reference/option.html 描述了这些构造函数的存在,暗示它们是内在的 JavaScript 语言组件,这是不正确的。
javascript: alert([new Image(), '\n\n', new Option()])
通过显示清楚地表明它们的明显存在
[object HTMLImageElement],
,[object HTMLOptionElement]
从修辞上讲,关于:
javascript:alert([new Anchor(), new Preserve(), new Form(),,, ])
还有哪些原始元素 DOM 构造函数?或者,没有了?
合并 new Image() 和 new Option() 等的编程定义是否与 Mozilla 使用的 DOM 范式不一致?解释他们的缺席?然而,这些构造函数显然不是 JavaScript 的语言规范所固有的,当然也不是 HTML。那么,究竟哪里有完整描述它们(包括参数类型和顺序)的正确的当前范例(源自 mozilla.org)?
引用资料:
Image() constructor use at Mozilla 旁白:(请不要因此而分心 - 唯一需要考虑的是找到文章标题中指定的相关文档)
这answer提示进行以下检查。这只是一个观察结果。
javascript:
alert([ Option, Image,
JSON, Math, Error,
Array, Boolean, Date, Function,
Number, Object, RegExp, String ].join("\n\n"));
alert( Image.toSource() );
在 FireFox 中生成:
[object Option]
[object Image]
[object JSON]
[object Math]
function Error() { [native code] }
function Array() { [native code] }
function Boolean() { [native code] }
function Date() { [native code] }
function Function() { [native code] }
function Number() { [native code] }
function Object() { [native code] }
function RegExp() { [native code] }
function String() { [native code] }
和
({})
但是
Error: ({}) is not a constructor
Source File: javascript:alert(new ({}));
Line: 1
Image 是否是构造函数?这个问题的答案(大概)可以在回答该帖子标题中所提问题的文档中找到。这应该强调在适当的文档中对 Image 和 Option 等进行编目的不一致、异常和不规则。
最佳答案
JavaScript™(Mozilla 的 DOM 操作的 ECMAScript 实现,又名 Gecko)和用于描述其他浏览器中类似脚本环境的通用术语“javascript”(例如 IE 中的 JScript)之间存在区别。
Archaic documentation, [...] describes the existence of these constructors implicating them as intrinsic JavaScript language components, which is incorrect.
你是怎么得出这个结论的? JavaScript™ 属于 Mozilla,因此他们可以指定它包含他们想要的任何内容。 JavaScript™ 从一开始就有一个 Image 和 Option 构造函数,其他实现复制了它们,因此现有的每个浏览器都有它们。此类功能在 W3C DOM 接口(interface)创建之前就已存在,并且在无处不在的地方被标记为“DOM 0”,这实际上意味着在 DOM 1 出现时由 Netscape Navigator 和 Internet Explorer 支持。
DOM 0 没有任何官方文档。 HTML5 是为浏览器中实现的 HTML 和 javascript 编写规范的尝试,因此它包括图像和选项构造函数,因此包括 DOM 0 功能,但它们没有这样标记或分类。
[...]
Yet, these constructors are clearly not intrinsic to the language specification of JavaScript
没有已发布的 JavaScript™ 规范,在 Mozilla Developer Network 处只有 JavaScript 文档(MDN)。另请注意,MDN 上的文档是一个公共(public) wiki,任何人 都可以创建和编辑,包括您。 :-)
您误以为 Mozilla 的文档是某种完整的 JavaScript™ 规范——事实并非如此。不是很远。它实际上只是感兴趣的人添加的文档,主要是通过浏览浏览器并查看它的作用。还有一个JavaScript Reference ,但您可能还会发现缺少这一点。
[...]
HTMLImageElement Mozilla documentation
指向 Gecko DOM 引用的链接记录了 W3C HTMLImageElementInterface 的 JavaScript 实现,它没有 Image 构造函数。
Contemporary precedent for Image() constructor use at Mozilla
这表明它存在,但没有方便的地方来记录它。它可能最好记录在 JavaScript Reference 中.如果您想添加它,请获取一个 MDN 帐户(免费,非常简单)并添加它。
现在有一个 Image MDN 上链接到相关标准的文章。
Option 构造函数是 documented in HTML5 .
关于javascript - `new Image()` 和 `new Option()` 等构造函数记录在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15233483/
我想在一个没有Sass引擎的类中使用Sass颜色函数。我已经在项目中使用了sassgem,所以我认为搭载会像以下一样简单:classRectangleincludeSass::Script::FunctionsdefcolorSass::Script::Color.new([0x82,0x39,0x06])enddefrender#hamlengineexecutedwithcontextofself#sothatwithintemlateicouldcall#%stop{offset:'0%',stop:{color:lighten(color)}}endend更新:参见上面的#re
Sinatra新手;我正在运行一些rspec测试,但在日志中收到了一堆不需要的噪音。如何消除日志中过多的噪音?我仔细检查了环境是否设置为:test,这意味着记录器级别应设置为WARN而不是DEBUG。spec_helper:require"./app"require"sinatra"require"rspec"require"rack/test"require"database_cleaner"require"factory_girl"set:environment,:testFactoryGirl.definition_file_paths=%w{./factories./test/
我正在尝试用ruby中的gsub函数替换字符串中的某些单词,但有时效果很好,在某些情况下会出现此错误?这种格式有什么问题吗NoMethodError(undefinedmethod`gsub!'fornil:NilClass):模型.rbclassTest"replacethisID1",WAY=>"replacethisID2andID3",DELTA=>"replacethisID4"}end另一个模型.rbclassCheck 最佳答案 啊,我找到了!gsub!是一个非常奇怪的方法。首先,它替换了字符串,所以它实际上修改了
我有一些代码在几个不同的位置之一运行:作为具有调试输出的命令行工具,作为不接受任何输出的更大程序的一部分,以及在Rails环境中。有时我需要根据代码的位置对代码进行细微的更改,我意识到以下样式似乎可行:print"Testingnestedfunctionsdefined\n"CLI=trueifCLIdeftest_printprint"CommandLineVersion\n"endelsedeftest_printprint"ReleaseVersion\n"endendtest_print()这导致:TestingnestedfunctionsdefinedCommandLin
我有两个Rails模型,即Invoice和Invoice_details。一个Invoice_details属于Invoice,一个Invoice有多个Invoice_details。我无法使用accepts_nested_attributes_forinInvoice通过Invoice模型保存Invoice_details。我收到以下错误:(0.2ms)BEGIN(0.2ms)ROLLBACKCompleted422UnprocessableEntityin25ms(ActiveRecord:4.0ms)ActiveRecord::RecordInvalid(Validationfa
如何在Ruby中按名称传递函数?(我使用Ruby才几个小时,所以我还在想办法。)nums=[1,2,3,4]#Thisworks,butismoreverbosethanI'dlikenums.eachdo|i|putsiend#InJS,Icouldjustdosomethinglike:#nums.forEach(console.log)#InF#,itwouldbesomethinglike:#List.iternums(printf"%A")#InRuby,IwishIcoulddosomethinglike:nums.eachputs在Ruby中能不能做到类似的简洁?我可以只
说在前面这部分我本来是合为一篇来写的,因为目的是一样的,都是通过独立按键来控制LED闪灭本质上是起到开关的作用,即调用函数和中断函数。但是写一篇太累了,我还是决定分为两篇写,这篇是调用函数篇。在本篇中你主要看到这些东西!!!1.调用函数的方法(主要讲语法和格式)2.独立按键如何控制LED亮灭3.程序中的一些细节(软件消抖等)1.调用函数的方法思路还是比较清晰地,就是通过按下按键来控制LED闪灭,即每按下一次,LED取反一次。重要的是,把按键与LED联系在一起。我打算用K1来作为开关,看了一下开发板原理图,K1连接的是单片机的P31口,当按下K1时,P31是与GND相连的,也就是说,当我按下去时
我正在尝试将以下SQL查询转换为ActiveRecord,它正在融化我的大脑。deletefromtablewhereid有什么想法吗?我想做的是限制表中的行数。所以,我想删除少于最近10个条目的所有内容。编辑:通过结合以下几个答案找到了解决方案。Temperature.where('id这给我留下了最新的10个条目。 最佳答案 从您的SQL来看,您似乎想要从表中删除前10条记录。我相信到目前为止的大多数答案都会如此。这里有两个额外的选择:基于MurifoX的版本:Table.where(:id=>Table.order(:id).
我需要一个通过输入字符串进行计算的方法,像这样function="(a/b)*100"a=25b=50function.something>>50有什么方法吗? 最佳答案 您可以使用instance_eval:function="(a/b)*100"a=25.0b=50instance_evalfunction#=>50.0请注意,使用eval本质上是不安全的,尤其是当您使用外部输入时,因为它可能包含注入(inject)的恶意代码。另请注意,a设置为25.0而不是25,因为如果它是整数a/b将导致0(整数)。
我目前正在用Ruby编写一个项目,它使用ActiveRecordgem进行数据库交互,我正在尝试使用ActiveRecord::Base.logger记录所有数据库事件具有以下代码的属性ActiveRecord::Base.logger=Logger.new(File.open('logs/database.log','a'))这适用于迁移等(出于某种原因似乎需要启用日志记录,因为它在禁用时会出现NilClass错误)但是当我尝试运行包含调用ActiveRecord对象的线程守护程序的项目时脚本失败并出现以下错误/System/Library/Frameworks/Ruby.frame