回复58提交的问题在哪看到无法提交

3544人阅读
js如何判断IE浏览器的版本包括IE11:
获取IE浏览器的版本在以前非常的好操作,但是由于IE11浏览器的出现,导致很多以前常用的方法已经无能为力,下面就介绍一下如何判断IE浏览器的版本,并且能够兼容IE11浏览器。
&!DOCTYPE html&
&meta charset=& utf-8&&
&meta name=&author& content=&/& /&
&title&蚂蚁部落&/title&
&script type=&text/javascript&&
var userAgent = navigator.userAgent,
rMsie = /(msie\s|trident.*rv:)([\w.]+)/,
rFirefox = /(firefox)\/([\w.]+)/,
rOpera = /(opera).+version\/([\w.]+)/,
rChrome = /(chrome)\/([\w.]+)/,
rSafari = /version\/([\w.]+).*(safari)/;
var ua = userAgent.toLowerCase();
function uaMatch(ua){
var match = rMsie.exec(ua);
if(match != null){
return { browser : &IE&, version : match[2] || &0& };
var match = rFirefox.exec(ua);
if (match != null) {
return { browser : match[1] || &&, version : match[2] || &0& };
var match = rOpera.exec(ua);
if (match != null) {
return { browser : match[1] || &&, version : match[2] || &0& };
var match = rChrome.exec(ua);
if (match != null) {
return { browser : match[1] || &&, version : match[2] || &0& };
var match = rSafari.exec(ua);
if (match != null) {
return { browser : match[2] || &&, version : match[1] || &0& };
if (match != null) {
return { browser : &&, version : &0& };
var browserMatch = uaMatch(userAgent.toLowerCase());
if (browserMatch.browser){
browser = browserMatch.
version = browserMatch.
document.write(browser+version);
上面的代码实现了判断功能,下面介绍一下它的实现原理,希望能够给需要的朋友带来帮助。
先来看一段代码:
navigator.userAgent
IE11下的信息截图:
然后使用相应的正则表达式进行匹配。IE11和以前版本的浏览器还是有较大差别的,以前的版本,这个信息中包含msie,IE11中没有了,新增加trident,后面跟着浏览器的版本号码,这一点要特别注意一下。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:113503次
积分:1652
积分:1652
排名:千里之外
原创:48篇
转载:90篇
(1)(8)(2)(1)(1)(2)(3)(13)(3)(3)(5)(5)(6)(4)(5)(3)(2)(3)(8)(16)(4)(4)(10)(5)(10)(7)(2)FF Chrome IE11 innerHTML参数没法获取到value的值 - HTML/CSS当前位置:& &&&FF Chrome IE11 innerHTML参数没法获取到value的值FF Chrome IE11 innerHTML参数没法获取到value的值&&网友分享于:&&浏览:0次FF Chrome IE11 innerHTML参数无法获取到value的值.
本次老系统添加兼容性改造碰到的一个问题. 老系统中单击某一行时通过obj.innerHTML获取数据.用IE11一直无法获取动态赋的value值,连手动填入的也无法获取. 神奇了.IE8下的效果:IE11下的效果(不开兼容性)查了半天的谷歌终于找到了一个办法.1.先引入jquery.2.添加代码
(function($) {
var oldHTML = $.fn.
$.fn.formhtml =function() {
if (arguments.length) return oldHTML.apply(this,arguments);
$("input,textarea,button", this).each(function() {
this.setAttribute('value',this.value);
$(":radio,:checkbox", this).each(function() {
if (this.checked) this.setAttribute('checked', 'checked');
elsethis.removeAttribute('checked');
$("option", this).each(function() {
if (this.selected) this.setAttribute('selected', 'selected');
elsethis.removeAttribute('selected');
return oldHTML.apply(this);
})(jQuery);
function getHTML(obj){
return $(obj).formhtml();
function tr_click(obj){
var _html0 = getHTML(obj);
alert(_html0);
总结:页面中输入的那个value,对DOM元素来说是个property,是不属于innerHTML里的IE8以下版本会出现,是因为IE不分attribute和property,这是IE的BUG,在IE9的时候终于得以修复而这个formHtml这个函数,强行给input元素加了一个叫value的attribute,从概念上说和dom的值value是不一样的,概念不同,不管怎么样,问题能解决就ok,不管是神马猫,能抓老鼠的猫就好好猫!感谢 /zhaozi/archive//2415290.html
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案暂无相关解决方案Copyright & &&版权所有

我要回帖

更多关于 java重复提交问题 的文章

 

随机推荐