我想在Rails中创建link_to“google like”。
让我解释一下。
对于简单的用户来说,一切看起来都很美好。
网址预览为stackoverflow.com
但是当我点击copy link location
时,我会收到此地址http://www.google.com/url?sa=t&rct=j&q=stackoverflow&source=web&cd=1&ved=0CC8QFjAA&url=http%3A%2F%2Fstackoverflow.com%2F&ei=JVOpTra5M-Pi4QT1pPwk&usg=AFQjCNERidL9Hb6OvGW93_Y6MRj3aTdMVA&sig2=_ARyobDs5AzfZw4YwBNg1g
如何使用Rails中的JS或Coffescript控制URL预览以获取link_to?有人能解决这个问题吗?
答案 0 :(得分:4)
原始链接引用是“漂亮版本”,但是mousedown事件会将URL更改为使用JavaScript通过Google网站重定向。
原始HTML:
<a class="l" onmousedown="return rwt(this,'','','','1','AFQjCNERidL9Hb6OvGW93_Y6MRj3aTdMVA','','0CDAQFjAA')" href="http://stackoverflow.com/">
堆栈溢出
在mousedown事件之后(甚至是右键点击):
<a class="l" onmousedown="return rwt(this,'','','','1','AFQjCNERidL9Hb6OvGW93_Y6MRj3aTdMVA','','0CDAQFjAA')" href="http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CDAQFjAA&url=http%3A%2F%2Fstackoverflow.com%2F&ei=aVepTtjwJ4nlsQKTvLHbBQ&usg=AFQjCNERidL9Hb6OvGW93_Y6MRj3aTdMVA">
堆栈溢出
基于ERB的模板的未经测试的JQuery实现:
$('.l').mousedown(function() {
$(this).attr("href","<%= url_for(:controller => :redirect, :action => :index) -%>/"+$(this).attr("href"));
});
答案 1 :(得分:0)
原始解决方案,但正确的方向?
<%= link_to "Test", "Pretty.url", :onmousedown => "window.location.href = 'UGLY.URL'; return false;" %>