1

私のウェブサイトでは、PHP、mySQL、Javascript、および Google Maps API を使用しています。各マーカーは場所であり (明らかに!)、ページ上の 2 つの DIV に読み込まれる情報を持っています。私がやりたいのは、主にナイトクラブである各場所の Twitter フィードを含めることです。場所のエントリを作成しました。Twitter のユーザー名をページに (テストとして) 印刷できます。どうにかして、Twitter が提供するタイムライン ウィジェットをうまく統合する必要があります。

<a class="twitter-timeline" href="https://twitter.com/" + twitter + " data-widget-id="255281308568272896">Tweets by @" + name + "</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>

私の2番目のHTML変数に:

var html2 = "<div class=loc-desc><h2>Description</h2>" + desc + "</div><div class=loc-wevents><h2>Weekly Events</h2>" + weeklydeals + "</div>";

API とその変数の配置に精通している人は、2 番目の HTML 変数の変数の基礎をすでに築いていることに気付くでしょう。この例では、'twitter' は Twitter のユーザー名 (@ なしで保存) であり、'name' は場所の名前です。(説明が必要な場合に備えて!)

これは私が最初に試みたものです:

var html2 = "<div class=loc-desc><h2>Description</h2>" + desc + "</div><div class=loc-wevents><h2>Weekly Events</h2>" + weeklydeals + "</div><a class=twitter-timeline href=https://twitter.com/ + twitter + " data-widget-id=255281308568272896>Tweets by " + name + "</a><script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=//platform.twitter.com/widgets.js;fjs.parentNode.insertBefore(js,fjs);}}(document,script,twitter-wjs);</script>";

私が抱えている問題は、Twitter 関数のセミコロンが原因で、Javasript がヒッシーフィットをスローすることです。

Twitter から提供されたコードのブロックから関数を分離しようとしましたが、非常に面倒になり、ウィジェットは JSON であるか、少なくとも Javascript とは異なるものである可能性があると思います。

これが私が試みたものです:

function twitter(d,s,id){
var js,fjs=d.getElementsByTagName(s)[0];
if(!d.getElementById(id)){
    js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";
    fjs.parentNode.insertBefore(js,fjs);
    }
}
    (document,"script","twitter-wjs");

次に、2 番目の HTML 領域のビットに関数をアタッチしようとしましたが、これが本来の方法ではないことは確かです。

var html2 = "<div class=loc-desc><h2>Description</h2>" + desc + "</div><div class=loc-wevents><h2>Weekly Events</h2>" + weeklydeals + "</div><a onload=twitter() class=twitter-timeline href=https://twitter.com/" + twitter + " data-widget-id=255281308568272896>Tweets by" + name + "(@" + twitter ")</a>";

私が望むのは、Javascript をより深く理解している人が私を正しい方向に向けてくれることです。私が理解していることから、コンソールでエラーをスローするセミコロンが必要なため、HTML 領域に関数全体を配置しても機能しません。

いつものように、どんな助けも素晴らしいでしょう

トリスタン

4

0 に答える 0