Blog

Blog

PHODAL

PhantomJS 支持操作 检查

继上一篇之后,我们来看看如何查看PhantomJS支持哪些操作,官方在https://github.com/ariya/phantomjs/blob/master/examples/features.js 给了一下简单的示例

PhantomJS features检查

首先我们需要modernizr,接着还要有这样一个脚本featrue:

var feature, supported = [], unsupported = [];

phantom.injectJs('modernizr.js');
console.log('Detected features (using Modernizr ' + Modernizr._version + '):');
for (feature in Modernizr) {
    if (Modernizr.hasOwnProperty(feature)) {
        if (feature[0] !== '_' && typeof Modernizr[feature] !== 'function' &&
            feature !== 'input' && feature !== 'inputtypes') {
            if (Modernizr[feature]) {
                supported.push(feature);
            } else {
                unsupported.push(feature);
            }
        }
    }
}

console.log('');
console.log('Supported:');
supported.forEach(function (e) {
    console.log('  ' + e);
});

console.log('');
console.log('Not supported:');
unsupported.forEach(function (e) {
    console.log('  ' + e);
});
phantom.exit();

就会输出下面类似的结果:

Detected features (using Modernizr 2.8.3):

Supported:
  flexboxlegacy
  canvas
  canvastext
  touch
  postmessage
  websqldatabase
  hashchange
  history
  draganddrop
  websockets
  rgba
  hsla
  multiplebgs
  backgroundsize
  borderimage
  borderradius
  boxshadow
  textshadow
  opacity
  cssanimations
  csscolumns
  cssgradients
  cssreflections
  csstransforms
  csstransitions
  fontface
  generatedcontent
  localstorage
  sessionstorage
  webworkers
  applicationcache
  svg
  inlinesvg
  smil
  svgclippaths

Not supported:
  flexbox
  webgl
  geolocation
  indexeddb
  csstransforms3d
  video
  audio

果然是不支持geolocation


或许您还需要下面的文章:

关于我

Github: @phodal     微博:@phodal     知乎:@phodal    

微信公众号(Phodal)

围观我的Github Idea墙, 也许,你会遇到心仪的项目

QQ技术交流群: 321689806

新书《全栈应用开发:精益实践》

这不是一本深入前端、后台、运维、设计、分析等各个领域的书籍。本书以实践的方式,将这一系列的领域及理论知识结合到一起,来帮助读者构建全栈Web 开发的知识体系,并辅以精益及敏捷的思想,来一步步开发Web 应用:从创建一个UI 原型到编写出静态的前端页面;从静态的前端页面到带后台的应用,并部署应用;从Web 后台开发API 到开发移动Web 应用。在这个过程中,我们还将介绍一些相辅相成的步骤:使用构建系统来加速Web 应用的开发;为应用添加数据分析工具来改进产品;使用分析工具来改善应用的性能;通过自动化部署来加快上线流程;从而帮助读者开发出一个真正可用的全栈 Web 应用。同时,我们也将帮助读者把这些步骤应用到现有的系统上,改进现有系统的开发流程。

comment

Feeds

RSS / Atom

最近文章

关于作者

Phodal Huang

Developer, Consultant, Writer, Designer

ThoughtWorks 高级咨询师

工程师 / 咨询师 / 作家 / 设计学徒

开源深度爱好者

出版有《前端架构:从入门到微前端》、《自己动手设计物联网》、《全栈应用开发:精益实践》

联系我: h@phodal.com

微信公众号: 与我沟通

标签