zoukankan      html  css  js  c++  java
  • 初识javascript(一):js在windows下运行的几种形式

    前言:

      与其说是教程,这个系列不如说是对javascript的一些介绍,

      自己摸爬滚打零散学了点js,不是很系统,更多是一些小tips的东西,希望能给对js还不了解的人做个入门介绍,

      当然,我本身水平不高,欢迎大家帮我指出缺漏,共同探讨,共同进步

    正文:

      一、对js的现状的一些介绍:

        js这几年几乎真正完成了“一次书写,到处运行”的愿望①,前端html+css+js打天下,数据库有mongodb撑场面,服务器有nodejs,想手机端跨平台运行有phonegap,pc端有node-webkit. 甚至非js语系的可以将c++,ruby等熟悉的语言,通过Emscripten编译为js②.这些扩展这文里不多介绍

      二、原生桌面应用实际上手:

        linux和windows其实对js都有原生支持,

        Ubuntu或其他常见linux下,你如果想用js做一个本地应用,可以参考gnome javascript③,

        由于我们标题就是js在windows下面的开发,所以我们的重心还是在win系统上

        最简单的一个实践,右键新建一个txt文件,直接用记事本敲入以下代码

        

    1 <script>
    2 alert("你好:)")
    3 </script>

        然后保存,重命名为XXX.hta,双击一下看看效果

        xp,win7,win8上均可以运行,这个例子告诉我们,微软也是很进步的嘛

        在<hta>标签中可以设置很多属性,类似窗口边框有无,这里我找了一个官网的例子

    <HTML>
    <HEAD>
      <TITLE>HTA Demo</TITLE>
        <HTA:APPLICATION ID="oHTA"
         APPLICATIONNAME="myApp"
         BORDER="thin"
         BORDERSTYLE="normal"
         CAPTION="yes"
         ICON=""
         MAXIMIZEBUTTON="yes"
         MINIMIZEBUTTON="yes"
         SHOWINTASKBAR="no"
         SINGLEINSTANCE="no"
         SYSMENU="yes"
         VERSION="1.0"
         WINDOWSTATE="maximize"/>
    
      <SCRIPT>
      function window.onload()
      {
         sTempStr = "applicationName  = " + oHTA.applicationName + "
    " + 
                    "border           = " + oHTA.border          + "
    " +
                    "borderStyle      = " + oHTA.borderStyle     + "
    " + 
                    "caption          = " + oHTA.caption         + "
    " +
                    "commandLine      = " + oHTA.commandLine     + "
    " +
                    "icon             = " + oHTA.icon            + "
    " +
                    "maximizeButton   = " + oHTA.maximizeButton  + "
    " +
                    "minimizeButton   = " + oHTA.minimizeButton  + "
    " + 
                    "showInTaskBar    = " + oHTA.showInTaskbar   + "
    " +
                    "singleInstance   = " + oHTA.singleInstance  + "
    " +  
                    "sysMenu          = " + oHTA.sysMenu         + "
    " + 
                    "version          = " + oHTA.version         + "
    " + 
                    "windowState      = " + oHTA.windowState     + "
    " ;
              
         oPre.innerText = sTempStr;          
      }
      </SCRIPT>
    </HEAD>
    <BODY SCROLL="no">
      <PRE ID=oPre>  </PRE>
    </BODY>
    </HTML>

        当然win8的metro应用也有专门的js编写情况,需要架设visual studio了[又偷懒了]

      三、其他的应用形式,首推node-webkit了,可以打包,可以运行,比hta的模式来讲,hta采用的是对应ie的内核,xp的话性能堪忧

        node-webkit用v8解析js,即结合了node.js的资源,又采用了chrome的浏览器解析,且又跨平台,囊括了linux windows mac,近乎全系列


    ①我总喜欢拿这几位大神的言论作例子 诸神:JavaScript是Web的汇编语言 

    ②这里有一些编译的项目,不仅仅是Emscripten 一切皆为javascript

    ③linux下面的教程下次我会补齐,这里也有一个完整的tutorial Hello Gnome!

    ④msdn上的一个简短的介绍 Introduction to HTML Applications

  • 相关阅读:
    关于tinymce编辑器插件重新初始化问题
    16进制=>rebg(包含透明度的转换处理)
    在vue项目中所有地方拿到当前项目的vue实例
    vue-draggable两种情况下的demo
    Docker管理工具之portainer
    SpringBoot集成Elasticsearch
    ElasticSearch添加索引
    Docker安装ElasticSearch
    RabbitMQ学习总结(2)-API的使用
    Docker安装RabbitMQ
  • 原文地址:https://www.cnblogs.com/sherylynn/p/3601111.html
Copyright © 2011-2022 走看看