0

より正確には、ページのすべてのイメージ マップを抽出する必要があります。

整形式のイメージ マップは次のように定義されます。

<img src="image.gif" width="145" height="126" alt="My Image" usemap="#mymap">

<map name="mymap">
    <area shape="rect" coords="0,0,82,126" href="page1.htm" alt="Area1">
    <area shape="circle" coords="90,58,3" href="page2.htm" alt="Area2">
    <area shape="circle" coords="124,58,8" href="page3.htm" alt="Area3">
</map> 

要素の必須の "name" 属性は、の "usemap" 属性に<map>関連付けられ、画像と地図の間の関係を作成します。<img>

整形式を維持して<map>、「name」属性がいずれの「usemap」属性にも対応しないものをすべてスキップするにはどうすればよい<img>ですか?

<img>「usemap」属性を持つすべての<map>要素と「name」属性を持つすべての要素を選択して、それらを 1 つずつ比較することを避けることはできますか?

この場合、 xpath は次のようなことを可能にします

 //map[concat('#', @name) = //img/@usemap]"

同等のものはありますか?

前もって感謝します

よろしく

コジ

4

1 に答える 1

0

これはすべきです

Document doc = Jsoup.parse(input, "UTF-8");
    Elements mapElements = doc.select("map");
    for (Iterator<Element> map = mapElements.iterator(); map.hasNext();)
    {
        Element element = map.next();
        Elements imageElements = doc.getElementsByAttributeValue("usemap", "#" + element.attr("name"));
        if(imageElements.size() == 0){
                // No <img> corresponds to this <map>, do whatever you like
        }
    }
于 2013-06-18T22:32:06.977 に答える