タグクラウドJS +フラッシュ。クラウドの実際のタグはクリックできませんか?
-
22-09-2019 - |
質問
私は自分のサイトにタグクラウドを実装しており、JSスクリプトを使用してそれを入力していますが、何らかの理由で、タグクラウドの実際のテキストはクリックできません。それは正しく表示され、正しく機能しますが、クラウドの実際のテキストは、何らかの奇妙な理由でリンクとして扱われていません。私の質問は次のとおりです。
以下の私のスクリプトでは、Tag Cloudのテキストを実際にリンクにするために修正する必要があるものがありますか?
私がそれを実装したサイトは、私が実行している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>
解決
なぜJSが問題だと思うのですか? Flash自体にデータを入れた場合、同じ問題がありますか?もしそうなら、あなたのテキストフィールドを見て、それらがHTMLとしてレンダリングしており、正しいイベントを発射していることを確認してください。
所属していません StackOverflow