12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'lib/lazy_images/rails/tag_helper.rb', line 12
def image_tag_with_lazy_images(source, options={})
src = path_to_image(source)
data = { rli_image_src: src, rli_placeholder: true }
placeholder = LazyImages::Rails.placeholder.dup
if options[:size]
options[:width], options[:height] = (options.delete(:size))
fragment = Nokogiri::XML::DocumentFragment.parse(placeholder)
fragment.first_element_child.set_attribute('width', options[:width])
fragment.first_element_child.set_attribute('height', options[:height])
placeholder = fragment.to_s
end
content_tag(:div, data: data, class: 'rli-wrapper') do
placeholder.html_safe + content_tag(:noscript) do
options[:src] = src
options[:class] = "#{options[:class]} rli-image"
image_tag_without_lazy_images(source, options)
end
end
end
|