关于浏览器兼容问题

CSS 浏览器兼容问题探讨 本文主要介绍了 CSS 的浏览器兼容问题。包括浏览器介绍、CSS 选择器兼容情况,还给出了 ie6 微型盒子兼容解决方法、ie6 双倍 margin 问题处理以及解决 div 中放 img 元素导致 div 高度多出几像素的方法。 阅读详情
常遇到的关于浏览器的宽高问题:
 var winW=document.body.clientWidth||document.docuemntElement.clientWidth;//网页可见区域宽
  var winH=document.body.clientHeight||document.docuemntElement.clientHeight;//网页可见区域宽

//以上为不包括边框的宽高,如果是offsetWidth或者offsetHeight的话包括边框

var winWW=document.body.scrollWidth||document.docuemntElement.scrollWidth;//整个网页的宽
  var winHH=document.body.scrollHeight||document.docuemntElement.scrollHeight;//整个网页的高
var scrollHeight=document.body.scrollTop||document.docuemntElement.scrollTop;//网页被卷去的高
  var scrollLeft=document.body.scrollLeft||document.docuemntElement.scrollLeft;//网页左卷的距离
  var screenH=window.screen.height;//屏幕分辨率的高
  var screenW=window.screen.width;//屏幕分辨率的宽
  var screenX=window.screenLeft;//浏览器窗口相对于屏幕的x坐标(除了FireFox)
  var screenXX=window.screenX;//FireFox相对于屏幕的X坐标
  var screenY=window.screenTop;//浏览器窗口相对于屏幕的y坐标(除了FireFox)
  var screenYY=window.screenY;//FireFox相对于屏幕的y坐标
event事件问题:

document.οnclick=function(ev){//谷歌火狐的写法,IE9以上支持,往下不支持;
var e=ev;
console.log(e);
}
document.οnclick=function(){//谷歌和IE支持,火狐不支持;
var e=event;
console.log(e);
}

document.onclick=function(ev){//兼容写法;
    var e=ev||window.event;
    var mouseX=e.clientX;//鼠标X轴的坐标
    var mouseY=e.clientY;//鼠标Y轴的坐标
  }
DOM节点相关的问题,我直接封装了函数,以便随时可以拿来使用:
function nextnode(obj){//获取下一个兄弟节点
    if (obj.nextElementSibling) {
      return obj.nextElementSibling;
    } else{
      return obj.nextSibling;
    };
  }
  function prenode(obj){//获取上一个兄弟节点
    if (obj.previousElementSibling) {
      return obj.previousElementSibling;
    } else{
      return obj.previousSibling;
    };
  }
  function firstnode(obj){//获取第一个子节点
    if (obj.firstElementChild) {
      return obj.firstElementChild;//非IE678支持
    } else{
      return obj.firstChild;//IE678支持
    };
  }
  function lastnode(obj){//获取最后一个子节点
    if (obj.lastElementChild) {
      return obj.lastElementChild;//非IE678支持
    } else{
      return obj.lastChild;//IE678支持
    };
  }
document.getElementsByClassName问题:
//通过类名获取元素
  document.getElementsByClassName('');//IE 6 7 8不支持;

  //这里可以定义一个函数来解决兼容问题,当然别在这给我提jQuery...
  //第一个为全局获取类名,第二个为局部获取类名
  function byClass1(oClass){//全局获取,oClass为你想要查找的类名,没有“.”
    var tags=document.all?document.all:document.getElementsByTagName('*');
    var arr=[];
    for (var i = 0; i < tags.length; i++) {
      var reg=new RegExp('\\b'+oClass+'\\b','g');
      if (reg.test(tags[i].className)) {
        arr.push(tags[i]);
      };
    };
    return arr;//注意返回的也是数组,包含你传入的class所有元素;
  }

  function byClass2(parentID,oClass){//局部获取类名,parentID为你传入的父级ID
    var parent=document.getElementById(parentID);
    var tags=parent.all?parent.all:parent.getElementsByTagName('*');
    var arr=[];
    for (var i = 0; i < tags.length; i++) {
    var reg=new RegExp('\\b'+oClass+'\\b','g');
      if (reg.test(tags[i].className)) {
        arr.push(tags[i]);
      };
    };
    return arr;//注意返回的也是数组,包含你传入的class所有元素;
   }
元素到浏览器边缘的距离:
//在这里加个元素到浏览器边缘的距离,很实用
  function offsetTL(obj){//获取元素内容距离浏览器边框的距离(含边框)
    var ofL=0,ofT=0;
    while(obj){
      ofL+=obj.offsetLeft+obj.clientLeft;
      ofT+=obj.offsetTop+obj.clientTop;
      obj=obj.offsetParent;
    }
    return{left:ofL,top:ofT};
  }
2025虚幻游戏逆向工程解包尝试 2025虚幻游戏逆向工程解包指南 本文详细介绍了虚幻引擎5游戏逆向解包的完整流程,主要包括获取AES密钥、生成映射文件和导出资源三个关键步骤。作者在实际操作中遇到诸多难题:AES密钥获取工具存在加壳保护问题,映射文件生成器依赖复杂的VS编译环境,DLL注入工具的使用也存在技术门槛。通过多次尝试,作者发现部分游戏可直接搜索现成的AES密钥,而映射文件生成需要额外下载Memcury依赖库才能正常编译。文章提供了相关工具的下载链接和具体操作说明,但同时也指出每个环节都可能出现意外状况,逆向工程实际执行过程远比理论 阅读详情

相关推荐

Landsat 9 数据预处理第一步:在ENVI里正确加载影像的保姆级指南(含MTL文件处理)

本文详细介绍了Landsat 9数据在ENVI中的预处理流程,重点讲解了MTL文件的关键修改与正确加载方法,帮助遥感新手快速掌握数据加载技巧。通过辐射定标、大气校正等步骤,确保数据达到分析就绪状态,适用于土地覆盖分类等高级应用。

weixin_29201313的博客 207

浏览器兼容性问题及解决方案(二)

简述 所谓的浏览器兼容性问题,是指因为不同的浏览器对同⼀段代码有不同的解析,造成页⾯显⽰效果不统⼀的情况。 常见的浏览器内核(渲染引擎) 四种内核: Trident、Gecko、Blink、Webkit 浏览器 内核 IE浏览器 Trident 内核,也成为 IE 内核 Chrome浏览器 Webkit 内核,现在是 Blink 内核 Firefox浏览器 Gecko 内核,俗称 Firefox 内核 Safari浏览器...

qq_39872626的博客 572

Android Studio安装常见问题详解——Android Emulator Hypervisor Driver for AMD Processors installation failed.

目录一、问题描述二、解决方案2.1 开启CPU虚拟化2.2 禁用Hyper-V2.3 使用管理员命令行在驱动程序包中执行“silent_install.bat” 一、问题描述 新买的AMD轻薄本,在安装Android Studio时遇到问题: Android Emulator Hypervisor Driver for AMD Processors installation failed. 笔记本配置为: 二、解决方案 2.1 开启CPU虚拟化 设置虚拟化的步骤这里不进行详细介绍了。如果需要,可以自行百

Wendy的博客 4万+

js如何获取设备分辨率兼容所有浏览器

如果之前的属性也不可用,则使用document.documentElement.clientWidth和document.documentElement.clientHeight获取文档元素的宽度和高度。最后,如果以上方法都不可用,则使用document.body.clientWidth和document.body.clientHeight获取文档体的宽度和高度。首先,它尝试访问window.screen.width和window.screen.height属性,这是一种常见的获取分辨率的方法。

weixin_44283589的博客 2194

centos7安装db2 version11.1

centos7安装db2 version11.1

AKA石头 1064

CKAD-CN 考试知识点分享(2) CronJob

成功创建 CronJobppi,每 5 分钟执行一次计算任务;配置了和;设置,超时自动终止;确保 Pod 不重启;手动创建ppi-testJob 验证功能正常;所有任务要求均已满足。

轻的博客 331

window.open()详解及浏览器兼容性问题

一、基本语法:window.open(pageURL,name,parameters)其中:pageURL 为子窗口路径name  为子窗口名字parameters 为窗口参数(各参数用逗号分隔)二、示例 window.open('page.html','newwindow','height=500,width=800,top=0,left=0, toolbar=no,menuba

itmyhome的专栏 2万+

华为模拟器eNSP练习题 - HCIA综合实验

华为模拟器eNSP练习题 - HCIA综合实验 题目要求 ISP路由器只能配置IP地址,之后不得进行其他任何配置; 整个内部网络基于192.168.1.0/24进行地址规划; R1/R2之间启动OSPF协议,单区域; PC1-PC4自动获取IP地址; PC1不能telnet R1,PC1外的其他内网pc可以; PC1-PC4可以访问PC5,R2的公网接口只拥有一个公有IP12.0.0.1; 外部的client可以通过域名www.ensp.com访问http server; ISP路由telnet 12.0

炸鸡店老板z的博客 9870

Padding在Chrome和IE中的区别

div{ width:500px; padding:0px; } chrome和ie下宽度均为500px,两者相同。   但是: div{ width:500px; padding:0px 20px 0px 20px; } 当padding的值不为0的时候,情况就不一样了。 chrome下 div

巴黎的妖 5857

Spring Boot 实现多图片上传并回显,涨姿势了~

上传 Controller的代码非常简单,由于用了SpringMVC框架,所以直接用MultipartFile来接即可。由于是多图片上传所以用数组来接。此处应该注意参数名应该和<input>中的name值相对应: @RequestMapping("/pic") @ResponseBody publicResponseEntity<String>pic(MultipartFile[]pictures)throwsException{ ResponseEnti...

weixin_54556126的博客 893

我的世界模组开发——前言

避坑:在开发过程中一定不要过分依赖AI,虽说现在的人工智能很厉害,但是也有很大的弊端,很多AI生成的代码错误百出,还得自己修改,而且像deepseek这种AI的训练数据还停留在一年前,给出的maven仓库地址都是过时的甚至是错误的,开发模组就是要多学习,多看源码,这样开发模组的水平才能越来越高。总而言之,build.gradle文件在我的世界Forge模组开发中扮演了重要的角色,它定义了项目的构建过程、依赖关系和编译选项,为开发者提供了灵活而强大的构建工具。开发工具推荐使用idea,因为可以使用通灵义码。

qq_24992377的博客 2594

前端浏览器开发中的浏览器兼容问题【持续更新】

浏览器兼容问题指:“不同浏览器(IE、Chrome、FireFox、Safari、Edge)对同一种CSS样式或同一段JS代码的解析和渲染会有所不同”,从而用户在不同浏览器环境下的访问呈现的页面效果不一致。浏览器兼容问题分为:“CSS兼容问题”、“JavaScript兼容问题造成浏览器兼容问题的根本原因是:“不同浏览器使用的内核不同”,不过随着时代的发展Webkit内核逐渐统一市场,浏览器兼容问题也越来越少。浏览器内核IETridentChromeBlinkFirefoxGecko。

zheshiyangyang的博客 2476

RK3588 部署 YOLO26-Pose 人体姿态检测:Windows Docker 环境全流程

YOLO26-Pose 在 RK3588 上的部署流程是 PC 端 ONNX 导出 → RKNN 转换(INT8 量化)→ 板端推理。INT8 量化后 YOLO26s-Pose 约 35ms,YOLO26n-Pose 约 15ms,可以覆盖实时姿态检测的需求。后处理是 Python 实现的常见瓶颈——如果帧率不达标,先用 npy 保存模型输出在 PC 上验证解析逻辑的正确性,确认无误后再迁移到 C++ 实现。

m0_64661770的博客 543

解决浏览器兼容问题

1.解决浏览器兼容问题 2.兼容问题2

qq_36836277的博客 240

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

浏览器兼容问题

浏览器兼容问题浏览器兼容问题浏览器兼容问题

master3003的博客 268

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

前端开发中浏览器兼容问题总结

前端开发中浏览器兼容问题总结

qq_39454432的博客 1136

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

浏览器常见的兼容问题

浏览器常见的兼容问题

weixin_69375569的博客 1221

浏览器的兼容问题及解决方案整理

本文全面分析了浏览器兼容性问题及其解决方案。首先介绍了五大主流浏览器(IE、Firefox、Safari、Chrome、Opera)及其四大内核(Trident、Gecko、Webkit、Blink),指出不同内核导致兼容性差异的根本原因。接着从JavaScript和CSS两个维度详细列举了20余种常见兼容性问题,如事件监听、DOM操作、样式渲染等,并提供了对应的解决方案。文章还提出了处理兼容性问题的思路框架,包括渐进增强与优雅降级策略,以及使用CSS Hack、条件注释等技术手段

Mihoa的博客 1456

浏览器兼容问题及处理方法

什么是浏览器兼容 浏览器兼容性问题又被称为网页兼容性或网站兼容性问题,指网页在各种浏览器上的显示效果可能不一致而产生浏览器和网页间的兼容问题。在网站的设计和制作中,做好浏览器兼容,才能够让网站在不同的浏览器下都正常显示,给用户更好的体验。 常见的几种浏览器兼容问题及解决办法 不同浏览器标签的内外边距不一样,即padding和margin值不一样。 解决办法:在css内下上*{margin:0;...

weixin_44829616的博客 306

如何解决浏览器兼容问题

aliven1的博客 455

部分浏览器兼容问题

部分浏览器兼容问题 ● 浏览器兼容问题由来  ○ 由于各大主流浏览器由不同的厂家开发,所用的核心架构和代码也很难重和,这就为各种莫名其妙的Bug(代码错误)提供了温床。再加上各大厂商出于自身利益考虑而设置的种种技术壁垒,都让CSS应用起来比想象得要麻烦。浏览器的兼容问题是我们必须去克服的。 ● 浏览器介绍  ○ 主流浏览器  Internet Explorer、 Saf...

aj1971的博客 207

关于安卓手机在微信内置浏览器内的兼容问题汇总

关于安卓手机在微信内置浏览器内的兼容问题汇总 不能自动播放问题 纯H5页面在手机端中是无法实现自动播放,移动端浏览器大部分是禁用video和audio的autoplay功能。这样做主要是为了防止不必要的自动播放浪费流量。很多移动浏览器也不支持首次js调用play方法进行播放(只有用户手动点播放后暂停,然后用代码进行play可以)。 Android:无法实现自动播放 (1).设置video属性aut...

weixin_42072601的博客 3647

CSS之浏览器兼容问题

CSS之浏览器兼容问题 以下内容转载编辑自奋斗中的小人物的博客 符合 W3C 的标准 目前,各主流浏览器的新版本,对于 W3C 的标准支持很好,因此,首先保证代码符合 W3C 的标准,这是解决浏览器兼容问题的前提。 其次,对于某些支持受限的属性,针对不同的浏览器添加相应的前缀,比如-webkit-、-o-、-moz-。 不同浏览器默认的内外边距不同 *{margin:0;p...

TSORA-C的博客 472
上一篇: ​x​ var a=1;var b=2;function run(){ var c=a+b console.log(c)}run()
下一篇: 数字金字塔
你好端端
博客等级 码龄10年 1粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值