分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 软件开发

js客户端检测

发布时间:2023-09-06 01:27责任编辑:苏小强关键词:js

1.能力检测的基本模式如下:

//能力检测的基本模式if (object.propertyInQuestion) {// 使用object.propertyInQuestion}throw new Error("No way to retrieve element")// 如检查sort是不是函数(存在)fucntion isSortable(object) {return typeof object.sort == "function";}

在可能情况下,尽量使用typeof 进行能力检测

// 检测所有浏览器的Flashfunction hasFlash() {var result = hasPlugin(‘Flash‘);if (!result) {result = hasIEPlugin(‘ShockwaveFlash.ShockwaveFlash‘);}return result;}// 检测Flash// alert(hasFlash());

对于方法检测

// 如检查sort是不是函数(存在)function isSortable(object) {return typeof object.sort == "function";}// 在浏览器环境下测试任何对象的某个特性是否存在/*** author:Peter Michaux*/function isHostMethod(object, property) {var t = typeof object[property];return t == "function" || (!!(t == ‘object‘ && object[property])) || t == "unknown";} //确定浏览器是否支持Netscape风格的插件var hasNSplugins = !!(navigator.plugins && navigator.plugins.length);// 确定浏览器是否具有DOM1级规定的能力var hasDOM1 = !!(document.getElementById && document.createElement && docuemnt.getElementByTagName);// 怪癖检测var hasDontEnumQuick = function() {var o = { toString: function() {} };for (var prop in o) {if (prop == "toString") {return false;}}return true;}();

用户代理检测是客户端检测的最后一个选择,优先使用能力检测和怪癖检测

js客户端检测

原文地址:http://www.cnblogs.com/sundjly/p/7899037.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved