js在html有几种存在方式,基础篇:1.JavaScript运行在html中,引用有几种方式?—— 6.js中常用的输出方式?...

书接上文,上文提到若干条JavaScript的基础性知识,大部分都是一些概念性的东西,本着认真严谨的态度,我们要认真对待,有些条目的问题是某个知识点的周边延伸,为节约篇幅,就一起整理了,如有描述不对的地方或者是描述不足的地方,望大家批评指正,下面是我给我”参考答案“,也只是仅供参考:

1.JavaScript运行在html中,引用有几种方式?

我知道的方法有3种:

第一种:外部引用远程JavaScript文件,如(相对路劲)或者是(绝对路劲);

第二种:直接用写在页面上,如:

document.write(‘这里是一行JavaScript代码1‘);

第三种:在JavaScript代码中引用外部js:

window.onload = function(){

var script = document.createElement("script");

script.setAttribute("type","text/javascript");

script.src = "http://common.cnblogs.com/script/jquery.js";

document.getElementsByTagName("head")[0].appendChild(script);

}

2.JavaScript通常写在页面的什么位置?

javascript的书写位置大致有3个地方:

第一个地方:是head头部,比如:

javascript引用方式

window.onload = function(){

var script = document.createElement("script");

script.setAttribute("type","text/javascript");

script.src = "http://common.cnblogs.com/script/index.js";

document.getElementsByTagName("head")[0].appendChild(script);

}

第二个地方:body的任何位置,如:

这里是一段文本!

window.onload = function(){

var script = document.createElement("script");

script.setAttribute("type","text/javascript");

script.src = "http://common.cnblogs.com/script/jquery.js";

document.getElementsByTagName("head")[0].appendChild(script);

}

第三个地方:以事件的形式写在标签上,如:

点我点我!

3.改变js加载顺序的方法有什么?

JavaScript是有加载顺序的,不同的加载顺序可以会导致不同的结果,举个栗子:

var txt = document.getElementById("txt");

alert(txt.innerHTML);

我是一段文本,你不能找到我!
我也是一段文本,你能找到我!

var txt = document.getElementById("val");

alert(txt.innerHTML);

第一段js执行会出错,因为html代码运行是至上而下加载的,第一段JavaScript代码先执行,才执行下面的html代码,所以根本就找不到该DOM节点,就会报错,如果html先执行,在运行JavaScript代码,就像第二段,就可以运行成功!当然,我不是说一定要先执行html代码,在执行JavaScript代码,这个要依情况而定;

再举一个栗子:

$(".calculator").fancybox();

上面的fancybox插件如果像上面这样的加载顺序去加载的话,一定是不能执行的,因为代码执行所依赖的js库是后面执行的,这里要讲的内容主要是想说明,如果是在使用一个插件,依赖某个js文件,一定要在前面先运行,不管是放在head头部,还是body中;

上面的例子说明一点,不同的js执行顺序,执行的内容是不一样的,所以改变js文件的位置,就可以改变js的加载顺序(注:这里指的是单独的JavaScript文件或片段,不包含函数的顺序)。

4.type属性都有哪些常用的值?代表什么意思?

打开Dreamweaver(我比较喜欢用这个编辑器,习惯了他给的提示,别说我low哦),在

application/ecmascript   application/javascript  application/x-ecmascript  application/x-javascript  text/ecmascript  text/javascript  text/jscript  text/livescript  text/tcl  text/x-ecmascript  text/x-javascript

oh,mygod!这么多!吓死宝宝了!

在上面打一下:

text/css  text/javascript

还好只有2个!

type属性在js上表示脚本的类型,即MIME类型,在link上表示叠层样式表的MIME类型,常用的就是2种(其他的不常用,也不知道是什么意思,用在什么情况,哪位大神帮忙科普一下):

text/css (css文本,告诉浏览器是加载css样式)

text/javascript  (JavaScript文本,告诉浏览器加载js代码)

貌似解释的有点牵强,呵呵!

5.除了type属性还有其他的什么属性?

再次打开Dreamweaver,给的提示有这几个:async,defer,language,runat,src

async:定义脚本是否异步执行,值为:async;

defer:指示脚本不会生成任何文档内容,浏览器可继续解析并绘制页面。意思就是等文档加载完毕了再执行此js,要是想深入了解这个属性,可以参考这里,如果你英文比较好,可以看这里。

language:规定脚本的语言,现在使用type来替代了;

runat:其值为server,表示是在服务器上运行此代码,客户端不运行,不常用;

src:指外部脚本文件的引用路径

6.js中常用的输出方式?

js的输出方式大概有下面几种:

//第一种

document.write("

你在干嘛,你妈妈叫你回家吃饭!

");

//第二种

document.getElementById("demo").innerHTML = "我再玩会,我妈妈饭还没熟呢!";

//第三种,提示框

alert("谁家能叫我吃饭啊!");

行文仓促,可能会有表述不对的地方,如有发现,希望能批评指正!谢谢!如果觉得不错,希望你能推荐给正在学习js 的同学,不胜感激!

原文:http://www.cnblogs.com/liugang-vip/p/4920961.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值