/// <summary> /// Get the contents of the element /// </summary> public static IEnumerable <HNode> Contents(this HElement element) { if (element != null) { return(element.Nodes()); } return(Enumerable.Empty <HNode>()); }
/// <summary> /// Get the combined text contents of the element, including his descendants. /// </summary> public static String Text(this HElement element) { if (element != null) { return(String.Concat( element .Nodes() .Select(n => (n is HText) ? ((HText)n).Value : (n is HElement) ? ((HElement)n).Text() : String.Empty) )); } return(String.Empty); }
/// <summary> /// Get the HTML content of an element /// </summary> public static String Html(this HElement element) { if (element != null) { StringBuilder result = new StringBuilder(); foreach (var content in element.Nodes()) { result.Append(HSerializer.DefaultSerializer.SerializeNode(content)); } return(result.ToString()); } return(String.Empty); }
/// <summary> /// Wrap <paramref name="wrappingElement"/> around the content of the element /// </summary> public static HElement WrapInner(this HElement element, HElement wrappingElement) { if (element != null && wrappingElement != null) { if (element.HasNodes) { element.Nodes().ToList().WrapAll(wrappingElement); } else { element.Append(wrappingElement.Clone()); } } return(element); }