操作HTML数据,CSS选择器

来源:互联网 发布:三毛梦里花落知多少诗 编辑:程序博客网 时间:2024/05/16 01:51

CSS3 选择器(可百度搜索CSS选择器,www.w3school.com.cn)

在CSS 中,选择器是一种模式,用于选择需要添加样式的元素。

"CSS" 列指示该属性是在哪个 CSS 版本中定义的。(CSS1、CSS2 还是 CSS3。)

选择器

例子

例子描述

CSS

.class

.intro

选择 class="intro" 的所有元素。

1

#id

#firstname

选择 id="firstname" 的所有元素。

1

*

*

选择所有元素。

2

element

p

选择所有 <p> 元素。

1

element,element

div,p

选择所有 <div> 元素和所有 <p> 元素。

1

elementelement

div p

选择 <div> 元素内部的所有 <p> 元素。

1

element>element

div>p

选择父元素为 <div> 元素的所有 <p> 元素。

2

element+element

div+p

选择紧接在 <div> 元素之后的所有 <p> 元素。

2

[attribute]

[target]

选择带有 target 属性所有元素。

2

[attribute=value]

[target=_blank]

选择 target="_blank" 的所有元素。

2

[attribute~=value]

[title~=flower]

选择 title 属性包含单词 "flower" 的所有元素。

2

[attribute|=value]

[lang|=en]

选择 lang 属性值以 "en" 开头的所有元素。

2


使用案例:

private void refresh() {
        HttpUtil.getComment(business.getReview_list_url(), new Listener<String>() {

            @Override
            public void onResponse(String arg0) {
                Document doc = Jsoup.parse(arg0);
                //所有评论的li
                Elements allComments = doc.select("div[class=comment-list] li[data-id]");
                
                List<Comment> list = new ArrayList<Comment>();
                
                for(Element element:allComments){
                    Comment comment = new Comment();
                    //从element中提取需要的内容,作为comment对象的属性
                
                Elements userinfo = element.select("div[class=pic] img");
                comment.setName(userinfo.get(0).attr("title"));
                comment.setAvatar(userinfo.get(0).attr("src"));
                
                Elements rating = element.select("div[class=user-info] span");
                comment.setRating(rating.get(0).attr("class").split(" ")[1]);//irr-star50
                
                Elements content = element.select(".J_brief-cont");
                comment.setContent(content.get(0).text());
                
                Elements images = element.select("div[class=shop-photo] img");
                if(images.size()>0){
                    //评论有配图
                    int number = images.size();
                    if(number>3) number = 3;
                    String[] imgs = new String[number];
                    for(int i=0;i<number;i++){
                        imgs[i] = images.get(i).attr("src");
                    }
                    comment.setImags(imgs);
                }else{
                    //评论没有配图
                    comment.setImags(null);
                }
                
                Elements price = element.select("div[class=user-info] span[class=comm-per]");
                if(price.size()>0){
                    //写了人均消费
                    comment.setAvgPrace(price.get(0).text());
                }else{
                    //没写人均消费
                    comment.setAvgPrace("");
                }
                
                Log.d("TAG", "商户的评论:"+comment.toString());
                
                list.add(comment);
            }
            
            adapter.addAll(list, true);
            adapter.notifyDataSetChanged();
                
            }
        });
        
    }


0 0