你沒有指定你是如何解析的,但這在jQuery中是可能的,因爲你可以確定窗口原點中任何元素的偏移位置。 Check out the example here.
代碼:
$(function() {
function sameHorizon(obj1, obj2, tolerance) {
var tolerance = tolerance || 0;
var obj1top = obj1.offset().top;
var obj2top = obj2.offset().top;
return (Math.abs(obj1top - obj2top) <= tolerance);
}
$('p').each(function(i,obj) {
if ($(obj).css('margin-top').replace('px','') < 0) {
var p1 = $(obj).prev('p');
var p2 = $(obj);
var pTol = 4; // pixel tolerance within which elements considered aligned
if (sameHorizon(p1, p2, pTol)) {
// put what you want to do with these objects here
// I just highlighted them for example
p1.css('background','#cc0');
p2.css('background','#c0c');
// but you can manipulate their contents
console.log(p1.html(), p2.html());
}
}
});
});
這個代碼是基於一個假設,如果一個<p>
具有負margin-top
然後嘗試與以前<p>
排列,但如果你知道的jQuery應該顯然如何改變它以符合不同的標準。
如果你不能爲你的問題使用jQuery,那麼希望這對其他誰是或者你可以在jQuery中設置一些東西來解析這個並輸出新的標記是有用的。
聽起來像一個「網絡瀏覽器」的工作:) – 2010-06-01 21:09:58
你使用什麼語言? PHP的? java嗎? ... – laher 2010-06-01 21:10:10
@這個問題:hahahahahahahaha。我真的爲你和這個要求感到難過。對不起的人:\ – Jason 2010-06-01 21:13:26