标签云JS + Flash。云中的实际标签不可点击?

时间:2010-03-27 05:21:27

标签: javascript flash swfobject tag-cloud

我在我的网站上实现了标签云,我使用JS脚本来填充它,但由于某种原因,标签云中的实际文本无法点击。它显示并正常工作,但由于某些奇怪的原因,云的实际文本不会被视为链接。我的问题是:

在我的下面的脚本中,您是否看到了我需要修复的任何内容才能使我的标签云的文本实际上是链接?

我实现它的网站是我运行的stackexhange网站,它应该是“最近标签”的云。

CloudPopulator.js


<script type="text/javascript">
var divRecentTags = document.getElementById("recent-tags");
if (divRecentTags) {
var cloud = new SWFObject("some/swfObject/url",    "tagcloudflash", "200", "200", "9", "#ffffff");
cloud.addParam("allowScriptAccess", "always");
cloud.addVariable("tcolor", "0x0a94d6");
cloud.addVariable("tcolor2", "0xC0C0C0");
cloud.addVariable("hicolor", "0x000000");
cloud.addVariable("tspeed", "150");
cloud.addVariable("distr", "true");
cloud.addVariable("mode", "tags");
var aTags = divRecentTags.getElementsByTagName("a");
var tagHtml = "";
for(var i = 0; i < aTags.length; i++) {
    var hrefText = aTags[i].getAttribute("href");
    var cssText = aTags[i].className;
    var tagName = $(aTags[i]).text();
    var styleText = "style=\'font-size: 8pt;\'";
    if (cssText == "post-tag pop1") {
        var styleText = "style=\'font-size: 15pt;\'";
    }
    else if (cssText == "post-tag pop2") {
        var styleText = "style=\'font-size: 22pt;\'";
    }
    var newLinkText = "<a href=\'"+hrefText+"\'"+styleText+">"+tagName+"</a>";
    tagHtml = tagHtml + newLinkText;
}
cloud.addVariable("tagcloud", escape("<tags>" + tagHtml + "</tags>"));
cloud.write("recent-tags");
}
</script>

1 个答案:

答案 0 :(得分:1)

为什么你怀疑JS是问题?如果您将数据放入闪存本身,是否会出现同样的问题?如果是这样,请查看TextField并确保它们呈现为HTML并触发正确的事件。