js在ie8和ie11的方法区别

JavaScript013

js在ie8和ie11的方法区别,第1张

方法名区别和参数个数区别。

1、方法名区别。js在ie8的方法名为后缀.8,ie11的方法名为后缀.11。

2、参数个数区别。js在ie8的参数个数为10个,ie11的参数个数为20个。

方法一,利用ActiveX控件实现:

代码

1 <script type="text/javascript">

2 function getFileSize(filePath)

3 {

4var fso = new ActiveXObject("Scripting.FileSystemObject")

5alert("文件大小为:"+fso.GetFile(filePath).size)

6 }

7 </script>

8 <body>

9 <INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value)">

10 </body>

11

12

这个方法在IE可以用,不足之处会有安全提示,把文件名改为.hta则会屏蔽掉安全提示。

方法二,利用img的dynsrc属性:

代码

1 <script type="text/javascript">

2 function getFileSize(filePath)

3 {

4var image=new Image()

5image.dynsrc=filePath

6alert(image.fileSize)

7 }

8 </script>

9 <body>

10 <INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value)">

11 </body>

12

13

这个方法在IE6可以用,在IE7,IE8,Firefox,chrome不能用。

方法三,利用img的fileSize:

代码

1 <script language=javascript>

2 var ImgObj=new Image() //建立一个图像对象

3 var AllImgExt=".jpg|.jpeg|.gif|.bmp|.png|"//全部图片格式类型

4 var FileObj,ImgFileSize,ImgWidth,ImgHeight,FileExt,ErrMsg,FileMsg,HasCheked,IsImg//全局变量 图片相关属性

5 //以下为限制变量

6 var AllowExt=".jpg|.gif|.doc|.txt|" //允许上传的文件类型 ?为无限制 每个扩展名后边要加一个"|" 小写字母表示

7 //var AllowExt=0

8 var AllowImgFileSize=70 //允许上传图片文件的大小 0为无限制 单位:KB

9 var AllowImgWidth=500 //允许上传的图片的宽度 ?为无限制 单位:px(像素)

10 var AllowImgHeight=500 //允许上传的图片的高度 ?为无限制 单位:px(像素)

11 HasChecked=false

12 function CheckProperty(obj)//检测图像属性

13 {

14 FileObj=obj

15 if(ErrMsg!="") //检测是否为正确的图像文件 返回出错信息并重置

16 {

17 ShowMsg(ErrMsg,false)

18 return false //返回

19 }

20

21 if(ImgObj.readyState!="complete") //如果图像是未加载完成进行循环检测

22 {

23 setTimeout("CheckProperty(FileObj)",500)

24 return false

25 }

26

27 ImgFileSize=Math.round(ImgObj.fileSize/1024*100)/100//取得图片文件的大小

28 ImgWidth=ImgObj.width //取得图片的宽度

29 ImgHeight=ImgObj.height //取得图片的高度

30 FileMsg="\n图片大小:"+ImgWidth+"*"+ImgHeight+"px"

31 FileMsg=FileMsg+"\n图片文件大小:"+ImgFileSize+"Kb"

32 FileMsg=FileMsg+"\n图片文件扩展名:"+FileExt

33

34 if(AllowImgWidth!=0&&AllowImgWidth<ImgWidth)

35 ErrMsg=ErrMsg+"\n图片宽度超过限制。请上传宽度小于"+AllowImgWidth+"px的文件,当前图片宽度为"+ImgWidth+"px"

36

37 if(AllowImgHeight!=0&&AllowImgHeight<ImgHeight)

38 ErrMsg=ErrMsg+"\n图片高度超过限制。请上传高度小于"+AllowImgHeight+"px的文件,当前图片高度为"+ImgHeight+"px"

39

40 if(AllowImgFileSize!=0&&AllowImgFileSize<ImgFileSize)

41 ErrMsg=ErrMsg+"\n图片文件大小超过限制。请上传小于"+AllowImgFileSize+"KB的文件,当前文件大小为"+ImgFileSize+"KB"

42

43 if(ErrMsg!="")

44 ShowMsg(ErrMsg,false)

45 else

46 ShowMsg(FileMsg,true)

47 }

48

49 ImgObj.onerror=function(){ErrMsg='\n图片格式不正确或者图片已损坏!'}

50

51 function ShowMsg(msg,tf) //显示提示信息 tf=true 显示文件信息 tf=false 显示错误信息 msg-信息内容

52 {

53 msg=msg.replace("\n","<li>")

54 msg=msg.replace(/\n/gi,"<li>")

55 if(!tf)

56 {

57 document.all.UploadButton.disabled=true

58 FileObj.outerHTML=FileObj.outerHTML

59 MsgList.innerHTML=msg

60 HasChecked=false

61 }

62 else

63 {

64 document.all.UploadButton.disabled=false

65 if(IsImg)

66 PreviewImg.innerHTML="<img src='"+ImgObj.src+"' width='60' height='60'>"

67 else

68 PreviewImg.innerHTML="非图片文件"

69 MsgList.innerHTML=msg

70 HasChecked=true

71 }

72 }

73

74 function CheckExt(obj)

75 {

76 ErrMsg=""

77 FileMsg=""

78 FileObj=obj

79 IsImg=false

80 HasChecked=false

81 PreviewImg.innerHTML="预览区"

82 if(obj.value=="")return false

83 MsgList.innerHTML="文件信息处理中..."

84 document.all.UploadButton.disabled=true

85 FileExt=obj.value.substr(obj.value.lastIndexOf(".")).toLowerCase()

86 if(AllowExt!=0&&AllowExt.indexOf(FileExt+"|")==-1) //判断文件类型是否允许上传

87 {

88 ErrMsg="\n该文件类型不允许上传。请上传 "+AllowExt+" 类型的文件,当前文件类型为"+FileExt

89 ShowMsg(ErrMsg,false)

90 return false

91 }

92

93 if(AllImgExt.indexOf(FileExt+"|")!=-1)//如果图片文件,则进行图片信息处理

94 {

95 IsImg=true

96 ImgObj.src=obj.value

97 CheckProperty(obj)

98 return false

99 }

100 else

101 {

102 FileMsg="\n文件扩展名:"+FileExt

103 ShowMsg(FileMsg,true)

104 }

105

106 }

107

108 function SwitchUpType(tf)

109 {

110 if(tf)

111 str='<input type="file" name="file1" onchange="CheckExt(this)" style="width:180px">'

112 else

113 str='<input type="text" name="file1" onblur="CheckExt(this)" style="width:180px">'

114 document.all.file1.outerHTML=str

115 document.all.UploadButton.disabled=true

116 MsgList.innerHTML=""

117 }

118

119 </script>

120 <form enctype="multipart/form-data" method="POST" onsubmit="return HasChecked">

121 <fieldset style="width: 372height: 60padding:2px">

122 <legend><font color="#FF0000">图片来源</font></legend>

123 <input type="radio" name="radio1" checked onclick="SwitchUpType(true)">本地<input type="radio" name="radio1" onclick="SwitchUpType(false)">远程:<input type="file" name="file1" onchange="CheckExt(this)" style="width:180px"><input type="submit" id="UploadButton" value="开始上传" disabled>

124

125 <div style="border:1 solid #808080background:#E0E0E0width100%height:20pxcolor:#606060padding:5px">

126 <table border="0"><tr><td width="60" id="PreviewImg">预览区</td><td id="MsgList" valign="top"></td></tr></table>

127 </div>

128 </fieldset>

129 </form>

pdf.js兼容ie8的写法如下:var DEFAULT_URL = '**.pdf'只用修改viewer.js文件中的pdf路径参数即可。如果pdf文件与viewer.html不在一层目录中,改成相对路径即可。

pdf.js是一个由HTML5建立的PDF阅读器。依托开源社区驱动和Mozilla实验室的技术支持。目标是建立一个通用的,基于web的解析和渲染PDF文件的平台。