Class: Nokogiri::HTML::DocumentFragment

### Home Classes Methods

### In Files

- lib/nokogiri/html/document_fragment.rb

### Parent

Nokogiri::XML::DocumentFragment

### Methods

- ::new
- ::parse

### Files

- CHANGELOG.ja.rdoc
- CHANGELOG.rdoc
- C_CODING_STYLE.rdoc
- Manifest.txt
- README.ja.rdoc
- README.rdoc

### Class/Module Index

Quicksearch

- Nokogiri
- Nokogiri::CSS
- Nokogiri::CSS::Node
- Nokogiri::CSS::Parser
- Nokogiri::CSS::SyntaxError
- Nokogiri::CSS::Tokenizer
- Nokogiri::CSS::Tokenizer::ScanError
- Nokogiri::Decorators
- Nokogiri::Decorators::Slop
- Nokogiri::EncodingHandler
- Nokogiri::HTML
- Nokogiri::HTML::Builder
- Nokogiri::HTML::Document
- Nokogiri::HTML::Document::EncodingReader
- Nokogiri::HTML::Document::EncodingReader::JumpSAXHandler
- Nokogiri::HTML::DocumentFragment
- Nokogiri::HTML::ElementDescription
- Nokogiri::HTML::EntityDescription
- Nokogiri::HTML::EntityLookup
- Nokogiri::HTML::SAX
- Nokogiri::HTML::SAX::Parser
- Nokogiri::HTML::SAX::ParserContext
- Nokogiri::HTML::SAX::PushParser
- Nokogiri::SyntaxError
- Nokogiri::XML
- Nokogiri::XML::Attr
- Nokogiri::XML::AttributeDecl
- Nokogiri::XML::Builder
- Nokogiri::XML::CDATA
- Nokogiri::XML::CharacterData
- Nokogiri::XML::Comment
- Nokogiri::XML::DTD
- Nokogiri::XML::Document
- Nokogiri::XML::DocumentFragment
- Nokogiri::XML::Element
- Nokogiri::XML::ElementContent
- Nokogiri::XML::ElementDecl
- Nokogiri::XML::EntityDecl
- Nokogiri::XML::EntityReference
- Nokogiri::XML::Namespace
- Nokogiri::XML::Node
- Nokogiri::XML::Node::SaveOptions
- Nokogiri::XML::NodeSet
- Nokogiri::XML::Notation
- Nokogiri::XML::PP
- Nokogiri::XML::PP::CharacterData
- Nokogiri::XML::PP::Node
- Nokogiri::XML::ParseOptions
- Nokogiri::XML::ProcessingInstruction
- Nokogiri::XML::Reader
- Nokogiri::XML::RelaxNG
- Nokogiri::XML::SAX
- Nokogiri::XML::SAX::Document
- Nokogiri::XML::SAX::Parser
- Nokogiri::XML::SAX::Parser::Attribute
- Nokogiri::XML::SAX::ParserContext
- Nokogiri::XML::SAX::PushParser
- Nokogiri::XML::Schema
- Nokogiri::XML::SyntaxError
- Nokogiri::XML::Text
- Nokogiri::XML::XPath
- Nokogiri::XML::XPath::SyntaxError
- Nokogiri::XML::XPathContext
- Nokogiri::XSLT
- Nokogiri::XSLT::Stylesheet
- XSD
- XSD::XMLParser
- XSD::XMLParser::Nokogiri
- Object

No matching classes.

# Nokogiri::HTML::DocumentFragment

### Attributes

errors[RW]

### Public Class Methods

new(document, tags = nil, ctx = nil) click to toggle source

    # File lib/nokogiri/html/document_fragment.rb, line 17
    def initialize document, tags = nil, ctx = nil
      return self unless tags

      if ctx
        preexisting_errors = document.errors.dup
        node_set = ctx.parse("<div>#{tags}</div>")
        node_set.first.children.each { |child| child.parent = self } unless node_set.empty?
        self.errors = document.errors - preexisting_errors
      else
        # This is a horrible hack, but I don't care
        if tags.strip =~ /^<body/
          path = "/html/body"
        else
          path = "/html/body/node()"
        end

        temp_doc = HTML::Document.parse "<html><body>#{tags}", nil, document.encoding
        temp_doc.xpath(path).each { |child| child.parent = self }
        self.errors = temp_doc.errors
      end
      children
    end

parse(tags, encoding = nil) click to toggle source

Create a Nokogiri::XML::DocumentFragment from `tags`, using `encoding`

    # File lib/nokogiri/html/document_fragment.rb, line 8
    def self.parse tags, encoding = nil
      doc = HTML::Document.new

      encoding ||= tags.respond_to?(:encoding) ? tags.encoding.name : 'UTF-8'
      doc.encoding = encoding

      new(doc, tags)
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.