1

我的网站使用 PHP、mySQL、Javascript 和 Google Maps API。每个标记都是一个位置(显然!),并且具有加载到页面上的 2 个 DIV 中的信息。我想做的是为每个地点添加一个 Twitter 提要,这些地点主要是夜总会。我已经为这些位置创建了条目,并且 Twitter 用户名可以打印在页面上(作为测试)。不知何故,我需要成功集成 Twitter 提供的 Timeline 小部件:

<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>

进入我的第二个 HTML 变量:

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

对于那些熟悉 API 及其变量放置的人,您会注意到我已经为第二个 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");

然后我尝试将该函数附加到第二个 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