如何根据页面宽度打破馈线?

时间:2015-10-14 16:29:36

标签: javascript php jquery xml-parsing

我不知道该怎么说,我会试着在这里表达自己。 我有这个提要网址:

  

http://v2.afilio.com.br/aff/aff_boutique_show_ads.php?boutiqueid=37930-895835&currencypos=0&display_img=1&diplay_name=1&diplay_price=1&thumbsize=80%&truncate_desc=15&numrows=1&numcols=20&colorname=000000&colorprice=E30000&bkcolor=FFFFFF&bordercolor=FFFFFF&self_target=0&

它一次拉出15件物品,就像一个商店。问题是一旦达到全宽就不会破坏线,另一方面,它只会在底部添加一个水平滚动条。

我需要做的是,而不是显示这样的项目:

|--- WIDTH 300px ---|

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15

我需要像这样显示它们:

|--- WIDTH 300px ---|

01 02 03 04 05 06

07 08 09 10 11 12

13 14 15

这是我的代码:


    http://v2.afilio.com.br/aff/aff_boutique_show_ads.php?boutiqueid=37930-895843&currencypos=0&display_img=1&diplay_name=1&diplay_price=1&thumbsize=80%&truncate_desc=15& numRows行= 1&安培;数numCols = 20&安培; colorname = 000000&安培; colorprice = E30000&安培; bkcolor = FFFFFF&安培; BORDERCOLOR = FFFFFF&安培; self_target = 0&安培;“);        回声($ a);      ?>
    

我也想知道是否可以使用javascript代替php。

1 个答案:

答案 0 :(得分:1)

如果你没有访问另一个api端点(例如一个产生json或xml的端点),那么你将不得不解析html来剥离不需要的apft;

$xml = new DOMDocument();
@$xml->loadHTMLFile('http://v2.afilio.com.br/aff/aff_boutique_show_ads.php?boutiqueid=37930-895835&currencypos=0&display_img=1&diplay_name=1&diplay_price=1&thumbsize=80%&truncate_desc=15&numrows=1&numcols=20&colorname=000000&colorprice=E30000&bkcolor=FFFFFF&bordercolor=FFFFFF&self_target=0&');

$products = array();

    //Loop through each <td> tag in the dom and extract inner html

foreach($xml->getElementsByTagName('td') as $p) {
    $children  = $p->childNodes;
    $phtml = '';
    foreach ($children as $child)
    {
        $phtml.= $p->ownerDocument->saveHTML($child);
    }
    echo '<div class="product">' . $phtml . '</div>';
}

的CSS

<style type="text/css">
    .product{
        width: 100px; float:left;
    }
</style>