Class: Vore::Handlers::TagRemover

Inherits:
Object
  • Object
show all
Defined in:
lib/vore/handlers/tag_remover.rb

Constant Summary collapse

SELECTOR =
Selma::Selector.new(match_element: "*")
UNNECESSARY_TAGS =
[
  # Remove code elements
  "pre",

  # Remove unnecessary elements
  "head",

  "form",
  "style",
  "noscript",
  "script",
  "svg",

  # Remove unnecessary nav elements
  "header",
  "footer",
  "nav",
  "aside",
]
CONTENT_TO_KEEP =
[
  "html",
  "body",
]

Instance Method Summary collapse

Instance Method Details

#handle_element(element) ⇒ Object



37
38
39
40
41
42
43
# File 'lib/vore/handlers/tag_remover.rb', line 37

def handle_element(element)
  if UNNECESSARY_TAGS.include?(element.tag_name)
    element.remove
  elsif CONTENT_TO_KEEP.include?(element.tag_name)
    element.remove_and_keep_content
  end
end

#selectorObject



8
9
10
# File 'lib/vore/handlers/tag_remover.rb', line 8

def selector
  SELECTOR
end