【问题标题】:How do you add a title attribute to a link generated by rinku auto_link in ruby on rails?如何在 ruby​​ on rails 中为 rinku auto_link 生成的链接添加标题属性?
【发布时间】:2012-06-16 02:46:22
【问题描述】:

这是目前在 auto_html.rb 中的代码

标题需要是动态的,基本上是截断 URL 的完整 URL,其中截断 URL 由 auto_link 生成。

AutoHtml.add_filter(:link).with({}) do |text, options|
  attributes = Array(options).reject { |k,v| v.nil? }.map { |k, v| %{#{k}="#{REXML::Text::normalize(v)}"} }.join(' ')

  Rinku.auto_link(text, :all, attributes) do |url|
      url.gsub(/https?:\/\//, "").truncate(25)
  end
end

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3.1


    【解决方案1】:

    您可以添加其他属性作为传递给第三个参数的字符串的一部分:

    Rinku.auto_link(text, :all, 'title="my title" target="_blank"')
    

    在您的情况下,您可以将其附加到属性变量:

    AutoHtml.add_filter(:link).with({}) do |text, options|
      attributes = Array(options).reject { |k,v| v.nil? }.map { |k, v| %{#{k}="#{REXML::Text::normalize(v)}"} }.join(' ')
    
      attributes += ' title="My title"'
    
      Rinku.auto_link(text, :all, attributes) do |url|
          url.gsub(/https?:\/\//, "").truncate(25)
      end
    end
    

    【讨论】:

    • 啊,谢谢。我希望在那里放一个动态标题。基本上是截断链接的完整链接文本,因此用户可以看到链接会将他们带到哪里。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-25
    • 2011-09-19
    • 2011-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多