0

私のサイトにタグ クラウドを実装し、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>
4

1 に答える 1

1

なぜJSが問題だと思うのですか? フラッシュ自体にデータを入れた場合、同じ問題がありますか? その場合は、TextField を見て、それらが HTML としてレンダリングされ、正しいイベントを発生させていることを確認してください。

于 2010-03-29T21:06:49.847 に答える