直接从JavaScript文件直接加载网页

时间:2019-04-22 05:54:59

标签: javascript ecmascript-next

我渴望做一些从未见过的事情。

我想仅使用客户端javascript 创建一个网页。例如,我想将一个javascript文件放在www.webpage.com/index.js上,并让浏览器运行该javascript文件。在该文件中,我将生成html和css,但我希望入口点专门是该javascript文件而不是HTML。

如果这不可能,我认为应该这样做。很多时候,我的html文件只是标题,标题和空正文。在这种情况下,愚蠢的是必须先下载一个html文件,然后只有在此之后,浏览器才可以下载实际上用内容填充该空白正文的javascript文件。

我认识到搜索引擎可能不知道如何为客户端javascript生成html的页面建立索引,但是我再次说,他们应该能够做到这一点,如果还没有的话,最终可能会做到。 / p>

我从未见过这样做。这可能吗?如果是这样,请您指导我有关该主题的任何资源。我什么都找不到。

2 个答案:

答案 0 :(得分:2)

我已经写了很多“页面”

<!DOCTYPE html>
<html>
   <head><meta charset="utf-8"></head>
   <body><script>

// The real stuff goes here, as inlined Javascript
// No need to make an extra roundtrip to the server
let d = document.body.appendChild(document.createElement("div"));
d.textContent = "Hello, world.";

   </body></script>
</html>

因此,基本上,我在HTML部分中所做的唯一一件事是修复了过去做出的一个错误决定(具有默认编码ISO-8859-1而不是UTF-8)。 这种文件确实只是Javascript,而浏览器加载并执行该文件所需的包装最少。

答案 1 :(得分:1)

mentioned elsewhere一样,可以创建也是有效HTML文件的JavaScript。

<!-- --><script>
console.log('Hello, World!');
// </script>

之所以有效,是因为the JavaScript spec

  

B Web浏览器的其他ECMAScript功能

     

B.1附加语法

     

B.1.3类似HTML的注释

     

...

     

SingleLineHTMLOpenComment ::
  <!-- SingleLineCommentChars opt