javascript - 在 html 页面上,javascript 是通过编程操作 DOM 的唯一方法吗?

标签 javascript html css dom scripting

JavaScript 是唯一可以在浏览器客户端运行以进行 DOM 操作等客户端脚本编写的语言吗?我认为 VBS 曾经在旧版本的 Internet Explorer 中可用,但现在不再可用?

对于无数种服务器端语言,我只在客户端真正见过 JavaScript。抱歉,如果这是一个愚蠢的问题,但是是否可以使用任何其他脚本语言来编写客户端代码?是否有任何浏览器本身(或至少合理地)允许使用另一种语言编写脚本,或者以其他方式直接访问 DOM?我知道可以使用巧妙的 CSS3 来处理嵌套菜单项之类的事情,所以不是这样。

最佳答案

比 JS 或没有 JS 更重要的是 HTML(5) 和 ECMAScript 规范。这实际上取决于浏览器来实现规范。例如 Google 使用 V8 进行 JS 处理。对于本地存储,Google 和 MS 使用 IndexedDB(用于 html5),而其他人则使用不同的客户端数据库(例如 FF 和 Safari-SQL Lite - 我认为)。

不再确定 IE 中的 VBS,但无论如何,任何其他浏览器都不支持它。 IE 有点落后了。 JS 现在已经成为浏览器世界事实上的标准,甚至在 Node.js 的帮助下在服务器端也越来越受欢迎......

更具体地说 - 还有其他语言可用于浏览器,并且已经(并且正在进行)进行了多种努力来提供 JS 的逻辑替代品。示例 - VBS、PERL、TCL、FF 中的 Python 插件等 - 但没有一个成为针对 JS 的可行选项(尤其是几乎每天都会出现多个 JS 框架)。

另一种方法是 Flex/Silverlight 类型环境,它本质上在浏览器顶部提供一个视口(viewport)来克服 HTML 的限制。但随着当前的 HTML5 规范,现在的趋势已经逆转 - 所有人都聚集在 HTML5 和 JS 周围。

关于javascript - 在 html 页面上,javascript 是通过编程操作 DOM 的唯一方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19852301/

相关文章:

html - 无法获取要使用的类

javascript - 如何按所需长度制作 `slice` 数组元素并更新

javascript - ReactJs Component Unexpected Token 错误条件

html - 在图像上方插入文本

html - 将 flex 容器拆分为等宽部分

html - CSS - 删除垂直容器边框

html - 超出水平滚动范围的区域设置为主体颜色

javascript - 如何使用 node.js javascript 将 JSON 转换为类似树的对象?

javascript - 构造封装 Node.js 请求的函数

javascript - 动态填充搜索框(选择) Bootstrap jquery中的选项