ツリー化した「最近のコメント」で、IEのみ一部コメントが表示されない問題を修正
長いタイトルでf(^^;)
ブログで欠かせないカスタマイズとして、「「最近のコメント」をツリー表示」が挙げられます。
記事単位にコメントをツリー表示できるため、レスの管理がとてもしやすくなります。
しかしながら、時折特定のコメントが表示されないケースがあり、レス漏れしてしまうという問題がありました。
ただし表示されないのはIEのみで、Firefoxではきちんと表示されていました。
この問題の原因と対処法を、facet-diversさまが突き止めて下さいました。
いつもありがとうございます。
「名前」の後ろに、半角スペースのついているコメントが、IEで表示されなくなってしまうとのことでした。
→「前とか間に半角空白あるときもダメかもしれません。」とのことです。
この問題を解消する方法は、以下の通りです。
1.comtree.js(コメントのツリー化スクリプト)を開きます。
2.2行目にある、
var objList = this.document.getElementsByTagName('ul');
という記述を、以下のように書き換えます。
var objList = this.document.getElementById('recent-comment').getElementsByTagName('ul');
3.9行目にある、
if (lnkItem.length == 2 && txtItem.indexOf(' on ') > -1) {
という記述を、以下のように書き換えます。
if (lnkItem.length == 2) {
4.comtree.jsを保存し、上書きアップロードします。
| 固定リンク
「ウェブログ・ココログ関連」カテゴリの記事
- 「KOROPPYの本棚」のトラックバック・ポリシー(2005.05.25)
- テンプレートをいじらずにココログのコメント欄で絵文字を使う方法(改訂版)(2011.09.20)
- テンプレートをいじらずにコメント欄で絵文字を使う方法(2005.01.14)
- ココログ本文で絵文字を使う方法(改訂版)(2006.02.08)
- 「同一カテゴリの最新記事5件表示」の見た目を、CSSで調整(2007.04.11)


コメント
しらなかったぁ!
こういう問題があったんですね。
うちはバリバリIE系のタグブラウザなんで
これは関係ありますねぇ。
投稿: かげさん | 2006.07.17 22:45
KOROPPYさん、どうもです。
偶然と言うか、私も先日それに気がつきまして、修正をかけたところでした(^^;。
私の場合、
if (lnkItem.length == 2 && txtItem.indexOf(' on ') > -1)
を
if (lnkItem.length == 2 && txtItem.replace( /<\/?[^>]+>/ig, '' ).match( / on / ) )
のように変えたわけですが、facetさんのやり方の方がスマートですね。
投稿: 風柳 | 2006.07.18 01:22
【かげさん】
名前の後に半角スペースを入れるというケースは珍しいので、
気がつきにくい現象ですよね。
【風柳さん】
既に対応済みでしたか~。
たまにレス漏れすることがあって「おかしいなぁ」と思いつつも、
ごく稀にしか発生しないので、
私はきちんと現象を把握してませんでした[汗]
>facetさんのやり方の方がスマートですね。
ハイレベルなやり取りで、ちっとも分からないですw
投稿: KOROPPY | 2006.07.18 10:09
名前の後に半角空白があるときだけじゃなくて、前とか間に半角空白あるときもダメかもしれません。未検証だったので「今回の場合はそれが原因でした」という限定ニュアンスのつもりでした。
ただ、どの場合にせよ、今回の対処で一応この問題は解消すると思います。…未検証ですが(笑)
あとは名無しコメントさんをどうするか、ですが、名無しさん相手ですからレス漏れしてもまあいいかなあ…
投稿: facet | 2006.07.18 10:35
【facetさん】
こんにちは。
今回も大変お世話になりました<(_ _)>
>未検証だったので「今回の場合はそれが原因でした」という限定ニュアンスのつもりでした。
そうだったのですね、早とちりでスミマセン。
記事にも補足しました。
>あとは名無しコメントさんをどうするか
私は「名前とメールアドレスが必須」なので発生しないのですが、
設定によっては名無しコメントされるケースもあるのですね~。
「(名無しさん)」とか「(No Name)」といった表示に、
置き換えられた方が便利なんでしょうか。
>名無しさん相手ですからレス漏れしてもまあいいかなあ…
あ、それは確かにw
投稿: KOROPPY | 2006.07.18 10:47
おぉ、まゆびが入力時に気づかずにスペースを
入れてしまったのですね!!すみません。<(_ _)>
たかがスペースでそんなことが起こるなんて。
いろいろありますね、コンピューターの世界は。
スペースでは今までにもいろいろやられました。(爆)
投稿: まゆび | 2006.07.18 20:20
【まゆびさん】
いえいえ、スクリプト側の問題ですから、
まゆびさんのせいではありません。
逆に問題を解消するきっかけになりました。
(丸々教えていただいただけですけれど[汗])
ありがとうございます。
スペースは意外と問題を起こしますよねw
要注意な存在です。
投稿: KOROPPY | 2006.07.19 12:41
対処法、ありがとうございました[ミニハート]
早速スクリプトに修正を加え、無事対処終了しました。
いつも『困ったときの・・・』みたいですいません[汗]
でも、IEとスペースの仕業だったとは・・・。
これを機に、ネスケの導入も考えてみましょうか[ひらめき]
投稿: 火魔神 | 2006.07.19 14:34
【火魔神さん】
これで今後は問題が起きないといいですね。
>いつも『困ったときの・・・』みたいですいません[汗]
いえいえ~。
FirefoxではOKで、IEのみダメなことまでは突き止めたのですが、
スクリプトの中を見ても難しくてさっぱり[涙]
自力での解決は出来ませんでした。
原因と対処法を見つけてくださったfacetさんに感謝です。
投稿: KOROPPY | 2006.07.19 15:41
KOROPPYさん、こんにちは~。zuccaと申します。
私もコメントのツリー化をしていますが、名前が表示されないのが時々あって、何故かなーと気になっていました。
こちらで、原因と対処法が分ってスッキリしました。
ありがとうございました。
ブログの記事内に KOROPPYさんのURLをLINKさせていただきました。
事後連絡で申し訳ありませんが、宜しくお願いします。
投稿: zucca | 2006.07.23 13:17
【zuccaさん】
記事でのご紹介、ありがとうございました。
私はまれなケースだったのでスルーしていたのですけれど、
結構高頻度で出ていらっしゃると気になりますね。
解決策を考えてくださった、facetさんに感謝です[ハート]
投稿: KOROPPY | 2006.07.23 15:23
KOROPPYさん、どうもです。
後れ馳せながら(ってひと月経ってる(苦笑))この件、当方でも記事にして、こちらにリンクさせていただきました。
そのまま、というのも芸がないので(?)、ついでに名無しさん対策も<(unknown)の置換。
ちなみに、この名無しさん問題、
| 「名前とメールアドレスが必須」なので発生しないのですが
気になって実験してみたら、名前を半角スペースだけにした場合も発生してしまうようです。
#もっとも、そこまで行ったら嫌がらせレベルですが(^^;
投稿: 風柳 | 2006.08.16 00:31
【風柳さん】
トラバどうもです。
もう1ヶ月近くたってるんですね、これ。
ブログって時の流れるのが早い気が[汗]
>気になって実験してみたら、名前を半角スペースだけにした場合も発生してしまうようです。
レアケースのような気もしますがw、不具合で発声する可能性もあるので、
(unKnown)対策をこちらでも導入させていただきました。
投稿: KOROPPY | 2006.08.16 15:13