[前台]---input标签中的hidden,浏览器差异问题

前言:
这是一个比较简单的问题,也有人犯过这样的错误,如果你是一个人在编码,并且没有专门的去测试浏览器差异,这个或许会坑到你

问题描述:
用input标签的时候,需要把这个input隐藏掉,于是先这样做:

<input hidden id="xxx" value="xxx"/>

这行代码运行后,在谷歌浏览器完美的隐藏了这个input,但在360浏览器上却展示出来了,并没有隐藏.

修改后:

<input type="hidden" id="xxx" value="xxx"/>

问题很容易解决了,因为后面这种写法是常规写法,哪个老师教最开始也都是这种写法

透过问题看本质:
首先,用第二种写法type=”hidden”去隐藏一个input标签,任何浏览器都是认这种写法的,但由于各个浏览器的内核不同,导致第一种写法,某些内核的浏览器就认不出来了

接下来简单说说浏览器的内核(某度搜的,感觉写的很好):
浏览器内核又可以分成两部分:渲染引擎(layout engineer 或者 Rendering Engine)和 JS 引擎。它负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入 CSS 等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要内核。JS 引擎则是解析 Javascript 语言,执行 javascript 语言来实现网页的动态效果。最开始渲染引擎和 JS 引擎并没有区分的很明确,后来 JS 引擎越来越独立,内核就倾向于只指渲染引擎。有一个网页标准计划小组制作了一个 ACID 来测试引擎的兼容性和性能。内核的种类很多,如加上没什么人使用的非商业的免费内核,可能会有 10 多种,但是常见的浏览器内核可以分这四种:Trident、Gecko、Blink、Webkit。

众多浏览器及其对应使用的内核:
1、IE浏览器内核:Trident内核,也是俗称的IE内核;
2、Chrome浏览器内核:统称为Chromium内核或Chrome内核,以前是Webkit内核,现在是Blink内核;
3、Firefox浏览器内核:Gecko内核,俗称Firefox内核;
4、Safari浏览器内核:Webkit内核;
5、Opera浏览器内核:最初是自己的Presto内核,后来加入谷歌大军,从Webkit又到了Blink内核;
6、360浏览器、猎豹浏览器内核:IE+Chrome双内核;
7、搜狗、遨游、QQ浏览器内核:Trident(兼容模式)+Webkit(高速模式);
8、百度浏览器、世界之窗内核:IE内核;
9、2345浏览器内核:好像以前是IE内核,现在也是IE+Chrome双内核了;
10、UC浏览器内核:这个众口不一,UC说是他们自己研发的U3内核,但好像还是基于Webkit和Trident,还有说是基于火狐内核。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/500053.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++和Objective-C混编(官方文档翻译)

苹果的Objective-C编译器允许用户在同一个源文件里自由地混合使用C和Objective-C&#xff0c;混编后的语言叫Objective-C。有了它&#xff0c;你就可以在Objective-C应用程序中使用已有的C类库。 Build Setting中要设定编译文件类型设置&#xff0c;如下图&#xff1a;Objectiv…

SpringMVC获取response的问题

SpringMVC获取response的问题: 关于用以下这种方式获取response的一些问题: ((ServletWebRequest) RequestContextHolder.getRequestAttributes()).getResponse(); 网上对于这种方式获取response的描述很多,我用的是jar包版本是3.2.9.release web.xml中肯定也是加了Request…

BigDecimal的个人总结

前言: 互联网公司,对于BigDecimal的使用,还是较为频繁的,那么就会涉及到关于这个类型的种种问题. 1:为什么使用BigDecimal 首先java八大基本类型真的很基本,4个整型搞不了小数,double和float搞的了小数,但搞不好,关键时刻就调链子,当然这也和他们存储方式有关(二进制无法精确的…

MagicRecord For IOS API深层解析

一、NSManagedObjectContext创建和获取1.默认上下文(每种只存在一个)&#xff08;1&#xff09;MR_rootSavingContext&#xff1a;此方法返回的上下文类型为NSPrivateQueueConcurrencyType(后台线程)&#xff0c;直接关联持久化协调器&#xff0c;对此上下文对象执行保存方法&a…

BeanUtils.copyProperties(对象A,对象B)

对于两个实例的复制,如果属性名字相同,则可以通过这个方法来操作,但是在使用的时候,一定要注意BeanUtils用的是哪个包的,因为常用的两个包,都有这个类和对应的方法,而复制方向却相反,所以一定要注意自动导包时选择的包!!!!!! 1.import org.springframework.beans.BeanUtils 这…

Xcode中的-ObjC和-all_load

有时候使用第三方库的时候&#xff0c;需要在Xcode的Build Settings下Other Linker Flags里面加入-ObjC标志。 之所以使用该标志&#xff0c;和Objective-C的一个重要特性&#xff1a;类别&#xff08;category)有关。根据这里的解释&#xff0c;Unix的标准静态库实现和Object…

[前台]---ajax返回200成功,却进入error函数的解决方法

最近碰到一个问题,就是如题目所说,ajax在调用的时候,明明返回成功了,但js代码却走到了error中,最后发现是我返回的json格式不对,jQuery在1.4后,对ajax返回的json格式有了很强的限制,所以一定要用严格的JSON格式返回. 先上代码: jQuery.ajax({type: "POST",async: tr…

SpringMVC解决静态资源不能访问

解决: 直接在SpringMVC的xml文件中加一行配置: <mvc:default-servlet-handler/> 问题根源: 做项目迁移的时候,原来控制层的框架是Struts2,现在要换成SpringMVC,第一版是尽量少改动的移过去,保证功能都正常,第二版开始优化,于是: 原来项目的访问都是XXX.action,现在想…

CocoaPods版本升级

和往常一样使用CocoaPods管理一个基于FMDB的项目类库 命令行执行 $ pod install [!] The master repo requires CocoaPods 0.32.1 - 失败&#xff0c;提示需要CocoaPods 0.32.1版本 查看CocoaPods版本 $ pod --version 0.29.0 确实需要更新了 命令行更新&#xff08;安装&…

[前台]---js获取input标签中name相同的各个value值

在页面form表单中,经常会有相同name的多个input标签,在提交表单前需要对这些input的value值做校验,就要在js中拿到这些值,下面这个方法,亲测是最实在的: 页面:<input type"hidden" name"myname" value"aa"/><input type"hidden&qu…

Objective-C消息转发

我们要通过一个小例子来简单、通俗的理解一下什么是消息转发以及如何消息转发&#xff0c;希望看完这篇文章时大家会彻底的明白OC的消息。首先&#xff0c;你需要知道这两个概念&#xff1a; OC中调用方法就是向对象发送消息。 比如 &#xff1a; 1[person run];这实际上这是在…

[前台]---js中方法的强制返回和java中方法的强制返回

java写惯了,偶尔写个js,真是各种坑,比如方法中的return的效果就不一样: java中: public static void main(String[] args) {String[] a {"1","2","3"};for (String s : a) {if(s.equals("1")){System.out.println(s);return;//方法中…

Create groups 与 Create folder references的区别

选择了Create groups方式添加了一个文件&#xff0c;我们会发现被添加进来的文件&#xff0c;文件夹是黄色的。选择了 Create folder references方式添加进来的文件的文件夹是蓝色的。那么两种方式有什么区别呢&#xff1f; 1.使用Create groups 为任何新增加的文件夹创建组&a…

[前台]---js重复上传一张图片两次,第二次失败的解决办法和思路

js重复上传一张图片两次,第二次会失败,解决办法就是修改input的value值. 先上代码: <input style"display:none" type"file" id"aaa" onchange"newuploadImageForDetail(event)" accept"image/jpg, image/jpeg, image/gif, …

XMPP协议简介

XMPP是一种基于标准通用标记语言的子集XML的协议&#xff0c;它继承了在XML环境中灵活的发展性。因此&#xff0c;基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求&#xff0c;以及在XMPP的顶端建立如内容发布系统和基于地址的服…

[前台]---关于input标签的value值

碰到这个情况,先上代码: <input type"hidden" id"input-shoppingListType" value0/> 这样写的话,最终在获取value的值的时候,平时都是0,直到有一次成了’0/’,发现了吗?把后面的斜杠也给拿到了,最终导致报错了 结果: <input type"hidde…

布尔类型(boolean/Boolean)自动生成的get方法需要注意的小细节

idea会自动生成get/set方法的, 对于布尔类型,要非常注意生成的get方法,到底是is开头还是get开头. 先说结论: 1.Boolean类型,生成的get方法是get开头的(建议使用这个). 2.boolean类型,生成的get方法是is开头的(用这个最好重写getXxx()格式的方法). 以下这个例子,可以验证这…

[前台]---js中去掉双引号或者单引号

在js中有这么一种情况,就是需要在function中动态的给标签加属性值,这时候如果带有引号,可能会导致加的属性值不是想要的,这时只需要去掉引号就可以,建议用下面这个: var a "双引号字符串"; a a.replace("\"","").replace("\"&q…

XMPP扩展协议详解

基本的jabber客户端必须实现以下标准协议&#xff08;XEP-0211&#xff09; 1、RFC3920 Core http://tools.ietf.org/html/rfc3920 2、RFC3921 Instant Messaging and Presence http://tools.ietf.org/html/rfc3921 3、XEP-030 Service Discovery http://www.xmpp.org/extensio…

[前台]---图片上传和校验

记一次简单的图片上传验证: 页面:<input type"file" id"hiddenFile" onchange"uploadImage(event)" accept"image/jpg, image/jpeg, image/gif, image/png">立即上传图片js: function uploadImage(e) {//图片的提前校验,如果返…