예제 #1
0
        /// <summary>
        /// 从当前容器按照 CSS 选择器搜索符合要求的元素
        /// </summary>
        /// <param name="container">要搜索子代元素的容器</param>
        /// <param name="expression">CSS 选择器</param>
        /// <returns>搜索到的符合要求的元素</returns>
        public static IEnumerable <IHtmlElement> Find(this IHtmlContainer container, string expression)
        {
            if (container == null)
            {
                throw new ArgumentNullException("container");
            }

            return(CssSelector.Search(expression, container));
        }
예제 #2
0
 /// <summary>
 /// 获取符合条件的子代元素
 /// </summary>
 /// <param name="container">要获取子代元素的容器对象</param>
 /// <param name="selector">用于筛选子代元素的选择器</param>
 /// <returns>符合选择器的容器的所有子代元素</returns>
 /// <remarks>与Find方法不同的是,Descendants方法的选择器会无限上溯,即当判断父代约束时,会无限上溯到文档根。而Find方法只会上溯到自身的子节点</remarks>
 public static IEnumerable <IHtmlElement> Descendants(this IHtmlContainer container, string selector)
 {
     return(CssSelector.Create(selector).Filter(Descendants(container)));
 }