什么是内联javascript?(审查速度/效率缓存比较)
我有很多内联javascript,但除了调用以下函数外,什么都没有:什么是内联javascript?(审查速度/效率缓存比较),javascript,html,ajax,Javascript,Html,Ajax,我有很多内联javascript,但除了调用以下函数外,什么都没有: <form id="some_id" style="x" method="post" onsubmit="return someFunction(this);"></form> 或“onchange”、“onkeyup”。我也有一些脚本(不是很多)用html写在标记中,其余的都是外部的。上面显式的内部调用都被外部脚本函数调用 我选择这样做是因为考虑到许多带有元素插入的异步调用,并且需要侦听器来注册
<form id="some_id" style="x" method="post" onsubmit="return someFunction(this);"></form>
或“onchange”、“onkeyup”。我也有一些脚本(不是很多)用html写在
标记中,其余的都是外部的。上面显式的内部调用都被外部脚本函数调用
我选择这样做是因为考虑到许多带有元素插入的异步调用,并且需要侦听器来注册这些更改,我发现这样做更实用。这是,$.on(“form onsubmit”,function(){将不应用于在没有侦听器的情况下异步附加的新元素。
由于我的模板结构,我正在服务器端构建新元素,并将它们直接附加到ajax回调中
我的main file.js(external)有1832行,我的索引文件(包括file.js)大约有500到350行,带有内联javascript,如上图所示
这就是说:
- 如上图所示保留内联javascript会被认为是一个巨大的缺陷(是的,我知道谷歌会这样做),或者即使按照高标准也会被认为是可以接受的
- 考虑到“内联javascript没有保存在缓存中”,这到底意味着什么?每次用户请求网页时,他都会获取上面一行中的整个“onsubmit”?或者我没有理解这句话的意思
抱歉,如果问题含糊不清,但我认为我的大部分服务几乎没有完成,我不知道我是否应该重复这一点:(非常感谢。很难定义“巨大缺陷”,所以让我们坚持正反两方面,保持代码“原样”: 专业人士:
此外,如果你打算学习更多的javascript,重构代码和学习如何正确绑定处理程序是一个非常好的练习。很难定义“巨大缺陷”,所以让我们坚持正反两方面的原则,保持代码“原样”: 专业人士:
这将处理DOM的任何未来变化。
是一个老的问题,可能有帮助。@ MattCeleMe:这是一个不同的主题。这是关于绑定处理程序作为元素属性的。@斜视这正是我所说的斜视,我们可以把<代码>绑定处理程序作为元素属性< /代码>作为内嵌的JavaScript吗?ily denegrate performance?你所说的是什么意思?如果它没有经过优化以重用相当多的函数,我会感到惊讶,因为它不会改变。@Fane:等等,你到底在说什么?现在再看一遍,你可能会混淆内联脚本和内联处理程序的概念。@眯着眼睛看是的,我是我猜猜看,你能很快解释给我听吗?我会同意你的答案,请这样做…我上面展示的代码仅仅是处理程序吗?对于每个处理程序都会创建一个新函数你是说每次一个新元素来自一个异步调用时,它都会创建一个新函数吗?这会给服务带来明显的不良性能吗?还是可能是协同的这是一个不同的话题。这是一个不同的话题。这是关于绑定处理程序的元素属性。@斜视这正是我所说的斜视。我们可以把<代码>绑定处理程序作为元素属性< /代码>作为内嵌的JavaScript吗?它会严重影响性能吗?如果它没有经过优化以重用相当多的函数,我会感到惊讶,因为它没有改变
。@Fane:等等,你到底在说什么?现在再看看这个,