« お詫びなど… | トップページ | 【AutoPagerize】Google 画像検索対応スクリプト更新(ver.0.01h) »

2010/04/30

【お知らせ】カレンダーPlus、ページングスクリプトの不具合修正など

以下の3種のスクリプトについて、不具合修正等を行ないました。
当方のスクリプトをそのままご使用中の方については、変更が自動的に反映されますので、特に何もする必要はありません。
スクリプトをご自分のサイトにアップロードしなおしてご使用中の方は、お手数ですが新版をアップロードしなおして下さい。
主として、コメントでご指摘頂いた内容を元に調査・修正を行なっております。
コメントいただいた方々、大変お待たせ致しまして申し訳ありません。ありがとうございました。
各スクリプトの主な修正内容は以下のようになります。
風柳亭: ココログカレンダーPluscocoCalendarPlus.js ver.0.01e)
  1. ブラウザでエラー("オブジェクトを指定して下さい"(IE)、"getPageTitle* is not defined"(Firefox)など)が発生する不具合の修正。
風柳亭: 【ココログ】アーカイブページに目次とページングを付加するJavaScriptcocoPView.js ver.0.07n)
  1. 目次の日付部分の表示がおかしくなる不具合の修正。
  2. ブラウザでエラー("オブジェクトを指定して下さい"(IE)、"getPageTitle* is not defined"(Firefox)など)が発生する不具合の修正。
  3. プルダウン表示するかどうかを、月別バックナンバー/カテゴリバックナンバー毎に指定できるオプション追加(cocoPView.monthlyPullDown、cocoPView.categoryPullDown)。
風柳亭: 【ココログ】過去記事をN件ずつさかのぼって表示するスクリプトcocoPBack.js ver.0.03f)
  1. 目次の日付部分の表示がおかしくなる不具合の修正。
  2. ブラウザでエラー("オブジェクトを指定して下さい"(IE)、"getPageTitle* is not defined"(Firefox)など)が発生する不具合の修正。
■覚書(原因など)
記事の日付が正しく取得出来なくなったり、ブラウザでエラーが出ていたのは、記事毎についているフッタの仕様が変わったのが原因。
しばらくネットから離れていたので、いつ頃からはわからないが…コメントなどから推測すると、2010年の3月頃?
□日付部分の仕様変更
古いフッタだと、
<p class="posted">
(投稿者や日付の情報)…
だったのが、
<p class="posted">
<span class="post-footers"> (投稿者や日付の情報)</span>…
のように一段深くなった。

□@niftyクリップやTwitterへの投稿ボタン追加
フッタ部分に@niftyクリップやTwitterへの投稿ボタンが付けられるようになった…のは別にいいのだけれど、問題は投稿ボタンのリンクをスクリプトで生成するようになっていること。

◆@niftyクリップ投稿ボタンの場合

<span class="entry-footer-links-niftyclip"><script type="text/javascript">
function getPageTitle60832568() {
    var pageTitle;
    if (navigator.userAgent.toLowerCase().match(/msie 6\.\d/)) {
        pageTitle = encodeURIComponent('思い付いた時に更新');
    } else {
        pageTitle = '%e6%80%9d%e3%81%84%e4%bb%98%e3%81%84%e3%81%9f%e6%99%82%e3%81%ab%e6%9b%b4%e6%96%b0';
    }
    return pageTitle;
}
</script>
<a href="javascript:location.href='http://clip.nifty.com/create?url='+encodeURIComponent('http://furyu.cocolog-nifty.com/blog/2010/04/post-dd5e.html')+'&title='+getPageTitle60832568();"><img onload="this.parentNode.href=eval(this.parentNode.href.match(/^javascript:location.href=(.*)$/)[1]);" src="http://clip.nifty.com/images/addclip_icn.gif" width="16" height="16" style="border:0;" alt="@niftyクリップに追加" title="@niftyクリップに追加" /></a><img src="http://api.clip.nifty.com/api/v1/image/counter/http://furyu.cocolog-nifty.com/blog/2010/04/post-dd5e.html" alt="クリップ数" />
</span>

◆Twitter投稿ボタンの場合

<span class="entry-footer-links-twitter"><script type="text/javascript">
var tweetTitle  = '%e6%80%9d%e3%81%84%e4%bb%98%e3%81%84%e3%81%9f%e6%99%82%e3%81%ab%e6%9b%b4%e6%96%b0';
var tweetUrl    = 'http://furyu.cocolog-nifty.com/blog/2010/04/post-dd5e.html';
var tweetLink = 'http://twitter.com/home?status='+tweetTitle + ' ' + tweetUrl;
document.write('<a href="'+tweetLink+'" target="_blank"'+' class="share-link share-link-twitter">Twitter<'+'/a>');
</script>
</span>

cocoPView.jsやcocoPBack.jsなどでは別ページの内容をを読み込んで切り張りするような箇所があるのだが、貼付内容にSCRIPT要素を含んでいても、innerHTMLへ入れたりするぶんにはSCRIPT部分は無視されるのでこれが特に悪さすることは通常はない。
ところが、特に嫌なのが@niftyクリップの方で、IMG要素にonload属性が指定されており、これはinnerHTMLに設定した場合などでも実行されてしまう。一方、その中でコールされるgetPageTitle*という関数は(SCRIPT要素が反映されていないため)存在せず、その結果として、ブラウザでエラーが発生する模様。
というわけで、ココログの記事を切り張りしているようなスクリプトは要注意、かも。
自作のものでもこれ以外にいろいろありそうだけど、対応しきれん……というか、そもそも最初から普通のリンクにしてくれればいいのに>ココログ。リンクをわざわざスクリプトで書き換え処理しているメリットが思い付かない(検索ボット対策?)。

« お詫びなど… | トップページ | 【AutoPagerize】Google 画像検索対応スクリプト更新(ver.0.01h) »

ウェブログ・ココログ関連」カテゴリの記事

覚書」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

« お詫びなど… | トップページ | 【AutoPagerize】Google 画像検索対応スクリプト更新(ver.0.01h) »

戻るリンク追加

カレンダー

2020年3月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

ココログカレンダーPlus(旧2)

検索


    • Web全体 サイト内
    • 蔵書のISBNを入力して下さい
    • はじめる前
      初級者向け
      上級者向け
      ブログ紹介
      結果を表示

コメントリストツリー化

無料ブログはココログ