2017-11-14 17 views
1

私はプロジェクトに取り組んでいます。私はencodeURIcomponent関数にいくつか問題があります。このサイトはソーシャルメディアのコンテンツバンクで、CMSにコピーを保存して、ソーシャルメディアサイトにリンクするためのリンクやボタンがページに表示されます。私はTwitterのコンポーネントに苦労しているし、いくつかの助けが必要です。これは一つの問題でチャンピオンのように働いているTwitterで共有するencodeURIcomponent苦闘

\t \t \t 
 
\t \t \t 
 
function tweetClick() { 
 
\t var url = "http://urlfromcms.com"; 
 
\t var text = "I'm getting this text dynamically from the CMS too."; 
 
\t window.open('http://twitter.com/share?url='+encodeURIComponent(url)+'&text='+encodeURIComponent(text), ''); 
 
\t \t \t }  \t \t \t  \t \t  \t \t
<a class="shareitbutton w-button" href="#" target="_blank" title="Tweet" onclick="tweetClick(); return false;">Tweet It!</a>

:ここに私のコードです。コピーにアンパサンド、アポストロフィ、引用符などがある場合は、それもエンコードされ、目的を破るツイートを編集する必要があります。 twitterに必要なスペースに%20をエンコードする方法はありますが、アンパサンドとアポストロフィをそのまま残しておく方法はありますか?

ご協力いただければ幸いです!

+0

私は本当に把握する必要があると思いますencodeURIComponentの.replace関数を使用する方法です。それで、私はそれらのすべての特殊文字が触れられていないことを確認することができます。私は知っている_ **何も** _それは私の問題です。私は文書を見上げたが、それはギリシア語のようだ。一言、これが私がCSSとHTMLに固執する理由です。私の頭の中で。 –

答えて

0

あなたのコードはそのまま動作するようです。 Twitterは、あなたがそれを与えるテキストをデコードするのに十分なスマートです:

enter image description here

enter image description here

+0

興味深い。私がここでそれを使用しているときはそうではないからです。 「Tweet It!」をクリックします。ボタンをクリックすると表示されます: http://social-media-share.webflow.io/posts/imported-item-11 –

+0

ページソースを参照してください: 'var text =" Coach Prattは何千人もの選手を訓練しており、彼はまた、Eltonブランドのようなプロスポーツ選手を含む多くの他の人の中で& Jewell Loydを紹介しています。'はNBAドラフトのための10年以上の準備をしています。その点に達する前に逃げる。 – jake

0

問題は、CMSから取得したテキストがencoded html entities

はあなたがHTMLエンティティをデコードすることができているということですtextthis answer

を使用して、window.open