找到最大字体的<p> </p>

时间:2013-10-09 21:26:51

标签: webkit phantomjs

说我的HTML文档中有不同的<p>元素。一旦渲染并取决于应用的样式,其中一些可能具有比其他样式更大的字体大小。

如何使用PhantomJS获取<p>哪个字体大小比其他字体大的内容?这甚至可能吗?

1 个答案:

答案 0 :(得分:1)

使用page.evaluate在网页的上下文中评估js函数。要获取给定元素的字体大小,请使用Window.getComputedStyle

最后,这可能就像这样

var page = require('webpage').create();
var url = 'http://jquery.com/';//just an example

page.open(url, function(status) {
    var results = page.evaluate(function() {
        return [].map.call(window.document.querySelectorAll('p'), function(p) { 
        return {content:p.innerHTML, size:window.getComputedStyle(p)['fontSize']}
        }).sort(function(a, b) {return b.size.replace(/px/, '')-a.size.replace(/px/, '');});
    });
    if(results && results.length>0) {
         console.log(JSON.stringify(results[0]));
    }       
    phantom.exit();
});