1关于script标签属性,注意点,浏览器文档模式,各种数据类型的转化
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<!--script标签的属性:1.charset 2.defer 3.language 4.src 5.type
他里边的代码解释顺序是从上到下。
里边的代码内容不能含有script标签,因为会把它作为结束标志,解决办法是把它分拆。
引用的外部js文件的解析顺序也是从上到下,但是如果都把引用的外部js文件放在头处,如果碰到引用外部js文件多且大,
解决办法是把它们放在body元素中
或者在script的属性中设置defer="defer"。不过对于他只有火狐和IE支持这个属性。
在xhtml代码中,不要使用<号,因为会把它解析城其他的标志,解决方法是1.把<换为< 2.使用<![CDATA[js代码]]>
3.使用 //<![CDATA[js代码 //]]> 也可以
-->
<script type="text/jscript">
//<![CDATA[
function compare(a,b)
{
if(a < b)
{
alert("b比a大");
}
else{
alert("a比b大");
}
}
// ]]>
</script>
<!--尽量引用外部js的 原因:维护性强,可缓存,可适应未来-->
<!--文档类型:IE5是混杂模式,IE7是标准模式,IE8是超级标准模式,在IE8中可以用meta标签来关闭默认文档模式。
如<meta http-equiv="X-UA-Compatible" content="IE=7"/>,这样就可以使用IE7的呈现引擎来呈现页面-->
<input id="Button1" type="button" onclick="compare(1,2);" value="比较1和2的大小"/>
<!--定义变量的时候可以这样定义:var message= 'infoa',meesage1=1,message2=true;-->
<!--typeof的使用:他并不是一个函数,它只是一个操作符,但是可以用()如下:-->
<script type="text/jscript">
function testTypeOf() {
var message = "message", number1 = 95;
alert(typeof message);
alert(typeof (message));
alert(typeof number1);
}
</script>
<input id="Button2" type="button" value="检测类型" onclick="testTypeOf();" />
<!--未初始化的默认值未undefined,null类型是一个object,undefined派生自null @40-->
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<!--JS里是可以表示八进制,和十六进制的,八进制就是在前边加一个前导的零,如果后边的数超过了0到7,
那么前导的零会被忽略,当做10进制来解析 。 对于16进制,前边需要加0x表示16进制
-->
<!--NaN:用于返回本来要返回数值的操作数而未返回的操作数值得情况(这样就不会出错了),它和任何数值都不相等,包括和自己。如-->
<script type="text/jscript">
function change() {
if (NaN == NaN) {
alert(true);
}
else {
alert(false);
}
}
</script>
</head>
<body>
<input id="Button1" type="button" value="测试NaN" onclick="change();" />
<!--有三个数值转换函数:Number():用于任何数据类型,包括对象。parseInt和paseFloat:只用于把字符串转换为数值。
paseInt会忽略前导的空格,它也能识别各种格式的整数。如:
-->
<script type="text/javascript">
function testInt() {
var number1 = parseInt("0xAF", 16);
var numbser2 = parseInt("010", 8);
alert("0xAF转化为16进制为:" + number1);
alert("010转化为8进制为:"+numbser2);
}
</script>
<input id="Button2" type="button" value="parseInt测试" onclick="testInt();" />
<!--paseFloat:它始终会忽略前导的0,同时对于16进制的数它会转化为0如:-->
<script type="text/javascript">
function testParseFloat(a) {
alert(parseFloat(a));
alert("0xAF在paseFloat中为:" + parseFloat("0xAF"));
}
</script>
<input id="Button3" type="button" value="测试parseFloat" onclick="testParseFloat('010');" />
<!--数值,bool值,对象都有toString()方法。而null,undefine是没有toString()方法的,多数情况下,它并不需要参数。但是在需要把数字
类型的字符串转化为各种数据格式时候,可以传递参数 如:-->
<script type="text/javascript">
function testToString(number) {
alert("9转化为8进制:"+number.toString(8));
}
</script>
<input id="Button4" type="button" value="测试testToString" onclick="testToString(9);" />
<!--在不知道其值是否是null,undefine的情况下,可以使用String()方法。 如:-->
<script type="text/javascript">
function testString(a) {
alert(String(a));
}
</script>
<input id="Button5" type="button" value="测试String" onclick="testString(null);"/>
<!--对象其实就是一组数据和功能的组合。它有6个属性和方法。-->
<!--位操作符,关键是要知道底层对有符号的正数和负数做的转化。(补码),非(~),与(&),或(|),异或(^)
左移(<<),左移不会影响操作数的符号位。有符号的右移(>>),无符号的右移(>>>)。有符号的右移和无符号的右移对于
正数没有什么影响,但是对于负数差别就很大了。因为无符号右移是以0来填充空位,有符号右移是以符号位的值充空空位。如:
-->
<script type="text/javascript">
function testMoveRight(a){
var oldValue = a;
var newValue = a>>>5;
alert("-64的无符号右移后的值:" + newValue);
}
</script>
<input id="Button6" type="button" value="测试负数的无符号右移" onclick="testMoveRight(-64);" />
</body>
</html>
1关于script标签属性,注意点,浏览器文档模式,各种数据类型的转化的更多相关文章
- 设置IE浏览器文档模式版本
浏览器版本问题是所有开发web的程序员共同的诟病,尤其是IE浏览器,笔者上次修改公司的一个项目中出现项目是在IE9没有出来之前,而现在修改时,则发现页面上出现的表格的错乱(因为表格是通过js动态生成的 ...
- 通过<meta>标签指定IE的文档模式实现CSS3兼容
今天发现之前做好的一个页面在IE中打开显示的效果不正常,本地和服务器上显示的是两种不同的样式. 经过确认文档内容和CSS都是一样的. 通过IE F12(开发人员工具)发现不正常的样式 浏览器文档模式自 ...
- 发布时一键添加html中的css标签和script标签版本号来防止浏览器缓存
AppendFileVersion 是一个VSIX插件支持vs2015意以上版本 是我用来发布时一键添加html中的css标签和script标签版本号来防止浏览器缓存 分享给大家! download ...
- DOM浏览器文档模型
DOM浏览器文档模型 1.对XHM/XHTML 编写成DOM文档 可形成动态网页 2.'*'获取所有节点 GetElementsByTagName():获取所有的标签名的集合--需要在js中使用win ...
- HTML span标签:用来组合文档中的行内元素
在DIV+CSS切图布局重构技术中,除了常常使用div标签外也常常使用span标签布局,通常也可以通过对span标签对象设置不同样式实现我们要的美化效果.这里主机吧主要讲的是span标签的定义和用法. ...
- JQuery DOM操作(属性操作/样式操作/文档过滤)
jQuery——入门(三)JQuery DOM操作(属性操作/样式操作/文档过滤) 一.DOM属性操作 1.属性 (1).attr() 方法 语法:$(selector).attr(name|prop ...
- <meta>指定浏览器模式(browser mode)或文档模式(document mode)无效
这是前两天解决的一个故障,准确的说它不是一个SharePoint的问题,而是IE8浏览器或者说是HTML代码的问题,但我感觉还是挺有意思的,所以贴上来分享一下. 基础知识 简单的讲,就是IE浏览器中有 ...
- X-UA-Compatible IE 浏览器默认文档模式设置
制作网页的时候,IE8浏览器浏览页面的时候,有时候文档模式默认是IE7,导致IE8兼容性不是非常好.出现IE7应该出现的模式. 解决的方法例如以下: 在X-UA-Compatible中可用的方法有: ...
- 关于html中的doctype的重要性的认知以及IE的浏览器模式与文档模式
浏览器模式”用于切换IE针对该网页的默认文档模式.对不同版本浏览器的条件备注解析.发送给网站服务器的用户代理(User-Agent)字符串的值.网站可以根据浏览器返回的不同用户代理字符串判断浏览器的版 ...
随机推荐
- 快速解读GC日志(转)
本文是 Plumbr 发行的 Java垃圾收集手册 的部分内容.文中将介绍GC日志的输出格式, 以及如何解读GC日志, 从中提取有用的信息.我们通过 -XX:+UseSerialGC 选项,指定JVM ...
- 如何让格斗游戏的横版过关(2) Cocos2d-x 2.0.4
在第一章<如何使横版格戏>基础上.添加角色运动.碰撞.敌人.AI和音乐音效,原文<How To Make A Side-Scrolling Beat 'Em Up Game Like ...
- android在单身的对象和一些数据的问题被释放
正式接触android我们一直在开发了一段时间,该项目的第一个版本最终会很快结束. 当有它自己的测试.拥有android后台.同一时候打开了几个应用之后又一次切回到自己的app.发现报错了.经过排查, ...
- freemarker定义自己的标记(三)-nested说明
freemarker定义自己的标记 1.nested指令 是可选的,能够在<#macro>和</#macro>之间使用在不论什么位置和随意次数 2.演示样例说明 <#ma ...
- [注意事项&车轮]java源代码 产生局部javadoc api档
随着Eclipse书写java码时间,有时候,因为我们不知道java函数返回.通过鼠标移动到java该功能,假设它javadoc相关内容将被显示. 但是,并非所有java代码javadoc:连装jav ...
- 浅谈 js 数字格式类型
原文:浅谈 js 数字格式类型 很多人也许只知道 ,123.456,0xff 之类的数字格式.其实 js 格式还有很多数字格式类型,比如 1., .1 这样的,也有 .1e2 这样的. 可能有人说这是 ...
- ASP.NET MVC中加载WebForms用户控件(.ascx)
原文:ASP.NET MVC中加载WebForms用户控件(.ascx) 问题背景 博客园博客中的日历用的是ASP.NET WebForms的日历控件(System.Web.UI.WebControl ...
- 使用IntelliLock加密授权你的.Net程序
原文:使用IntelliLock加密授权你的.Net程序 转自:http://www.nsoff.com/post/2012/05/23/%E4%BD%BF%E7%94%A8IntelliLock%E ...
- Python 2.7.3的文件编码问题,print在控制台下面中文乱码问题,以及推荐做法
情况:文件乱码,在cmd上输出print也乱码.解决方案:统一为gbk的简体中文编码方式.步骤如下: 1.每个py文件使用[简体中文(GB2312)- 代码页 936]格式保存,行尾为[Windows ...
- String 的intern() 方法说明
1.说明 Java中string.intern()方法调用会先去字符串常量池中查找相应的字符串,如果字符串不存在,就会在字符串常量池中创建该字符串然后再返回. 2.源码说明 public native ...