You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.6 KiB
47 lines
1.6 KiB
8 years ago
|
package goquery
|
||
|
|
||
|
import "golang.org/x/net/html"
|
||
|
|
||
|
// Add adds the selector string's matching nodes to those in the current
|
||
|
// selection and returns a new Selection object.
|
||
|
// The selector string is run in the context of the document of the current
|
||
|
// Selection object.
|
||
|
func (s *Selection) Add(selector string) *Selection {
|
||
|
return s.AddNodes(findWithMatcher([]*html.Node{s.document.rootNode}, compileMatcher(selector))...)
|
||
|
}
|
||
|
|
||
|
// AddMatcher adds the matcher's matching nodes to those in the current
|
||
|
// selection and returns a new Selection object.
|
||
|
// The matcher is run in the context of the document of the current
|
||
|
// Selection object.
|
||
|
func (s *Selection) AddMatcher(m Matcher) *Selection {
|
||
|
return s.AddNodes(findWithMatcher([]*html.Node{s.document.rootNode}, m)...)
|
||
|
}
|
||
|
|
||
|
// AddSelection adds the specified Selection object's nodes to those in the
|
||
|
// current selection and returns a new Selection object.
|
||
|
func (s *Selection) AddSelection(sel *Selection) *Selection {
|
||
|
if sel == nil {
|
||
|
return s.AddNodes()
|
||
|
}
|
||
|
return s.AddNodes(sel.Nodes...)
|
||
|
}
|
||
|
|
||
|
// Union is an alias for AddSelection.
|
||
|
func (s *Selection) Union(sel *Selection) *Selection {
|
||
|
return s.AddSelection(sel)
|
||
|
}
|
||
|
|
||
|
// AddNodes adds the specified nodes to those in the
|
||
|
// current selection and returns a new Selection object.
|
||
|
func (s *Selection) AddNodes(nodes ...*html.Node) *Selection {
|
||
|
return pushStack(s, appendWithoutDuplicates(s.Nodes, nodes, nil))
|
||
|
}
|
||
|
|
||
|
// AndSelf adds the previous set of elements on the stack to the current set.
|
||
|
// It returns a new Selection object containing the current Selection combined
|
||
|
// with the previous one.
|
||
|
func (s *Selection) AndSelf() *Selection {
|
||
|
return s.AddSelection(s.prevSel)
|
||
|
}
|