没有Directwrite的页面:http://i.imgur.com/2lsFuIn.png

具有Directwrite的页面:http://i.imgur.com/By7g9qd.png

我的菜单系统是按照精确像素进行设置的,因此Directwrite会弄乱布局。当然,更好的解决方案可能是修复菜单系统而不依赖于确切的像素,这也是可以接受的,但是我主要是在寻找一种方法来检测Directwrite作为一种快速简便的方法。

有问题的网站:http://www.meyersboat.com/meyers/photos/

最佳答案

这都是由directwrite,font-family和font-size引起的,这是一个简单的测试:

function checkForDirectwrite(){
    var test = document.createElement('div');
    test.innerHTML = 'abcdefghijklmopqrstuvwxyzABCDEFGHIJKLMOPQRSTUVWXYZ';
    test.setAttribute('style','font-size:11px;visibility:hidden;position:absolute;height:auto;width:auto;white-space:nowrap;top:0px;left:-10000px;z-index:-10');
    document.body.appendChild(test);
    var width = test.clientWidth+1;
    document.body.removeChild(test);
    return width;
}


在您的页面中:

谷歌浏览器(启用Directwrite)-> 317像素

谷歌浏览器(禁用Directwrite)-> 312像素

Firefox-> 310像素

iExplorer-> 310像素

关于javascript - 检测directwrite Chrome ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25954192/

10-11 14:21