2015-06-26 2 views
0

У меня есть кнопка щебета на моей странице. Я использую этот код, потому что мне нужен пользовательский значок. Моя проблема заключается в том, что я не могу добавить хэштег в пользовательский текст. Там, где говорится «пользовательский текст», я ввожу свой твит.Невозможно добавить хэштегов # в мою кнопку щебетать

<a class="icon-twitter" rel="nofollow" 
     href="http://twitter.com/" 
     onclick="popUp=window.open(
      'http://twitter.com/intent/tweet?text= custom text', 
      'popupwindow', 
      'scrollbars=yes,width=800,height=400'); 
    popUp.focus(); 
    return false"> 
    <i class="visuallyhidden"><img class="social-media" src="images/twitter.png"/></i> 
    </a> 

ответ

1

Необходимо кодировать #. Это связано с тем, что # в противном случае будет рассматриваться как хеш-часть URL-адреса, а не как часть строки запроса text, так же как & будет интерпретироваться как разделитель между двумя параметрами запроса, а не частью значения, если только вы кодируете его до %26. Если «произвольный текст» может быть что угодно, использовать encodeURIComponent:

'http://twitter.com/intent/tweet?text=' + encodeURIComponent('#custom #text') 

Если значение всегда будет жестко, заменив # с %23 бы:

'http://twitter.com/intent/tweet?text=%23custom %23text' 
Смежные вопросы