解決済
ブログの記事やコメント評価画像の変更
ライブドアブログでは、顔画像や星画像で評価を行うことが出来ますが、
この画像を自分なりにカスタマイズできるのでしょうか?
実際この画像は直接上書き等できる代物ではありませんので、
どのように変更したら良いか分かりませんでした。
削除する方法等は見かけました。
そして、削除して違う画像というところまでは考え付きましたが、
それでは評価ボタンとは独立しているので上手くいきません。
どなたかご助言のほど宜しくお願い致します。
回答(1)
1.

もう少しスッキリ書きたいという欲求はありますが、
とりあえずこんなスクリプトでどうでしょうか。
<script type="text/javascript"><!--
var imgHeight = "画像の高さ";
var imgWidth = "画像の幅";
var imgs = document.getElementById("content").getElementsByTagName("img");
for(var i=0;i<imgs.length;i++){
fileName = imgs[i].src.split("/").pop();
switch(fileName){
case "1.gif":
imgs[i].src = "画像1のURL";
imgs[i].height = imgHeight;
imgs[i].width = imgWidth;
break;
case "2.gif":
imgs[i].src = "画像2のURL";
imgs[i].height = imgHeight;
imgs[i].width = imgWidth;
break;
case "3.gif":
imgs[i].src = "画像3のURL";
imgs[i].height = imgHeight;
imgs[i].width = imgWidth;
break;
case "4.gif":
imgs[i].src = "画像4のURL";
imgs[i].height = imgHeight;
imgs[i].width = imgWidth;
break;
case "5.gif":
imgs[i].src = "画像5のURL";
imgs[i].height = imgHeight;
imgs[i].width = imgWidth;
break;
}
}
// --></script>
画像1~5のURLは評価に応じた変更したい画像のURLを挿入してください。
画像の高さと幅はピクセル値で指定します(単位のpxは不用)。
只今確認させて頂きました!
わざわざありがとうございます。
お手数をお掛け致しました。
そして、長らくお待たせしました…。
これで間違いなく、☆画像を自分の好きな画像に変更することが出来ます!
コメント(9)
不可能じゃないけどかなり難しいんじゃないかなぁ。。
やはり、そうですよね…。
デザイン変更からは出来ない感じでしょうか…。
例えば星3つの評価をします。
すると
http://parts.blog.livedoor.jp/img/star/3.gif
この画像が表示されるわけですが
これはライブドア側で処理されている事なので変えることはできないと思うんですよ。
でもこれらの画像を一旦表示した直後にJavaScriptで別の画像に差し替える事ならばあるいは可能なんじゃないかなぁ、と思ったのでコメントしてみた次第です。
もちろん私の知識とスキルでは到底ムリですけどね^^;
差し替え方法を試行錯誤してみましたが、
結局よく分かりませんでした…。
しかし、JavaScriptを用いることで解決なのでしょうね。
>>1
書き忘れましたが、評価の画像を任意の画像に置き換えるスクリプトです。
挿入する場所は</body>の直前なら大体動くと思いますが、もう少し表示を早くしたい場合は<div id="left">の直前がいいかもしれません。
全ページをカスタマイズする必要があるので、それが面倒だという場合はとりあえずフリーエリアに貼っただけでも動くかと思います(改行 -> <br>変換なしで)。余計な枠ができてしまうのが難点なのですが。
ええと、たびたびすみません。
連想配列を使って条件分岐を無くしてみました。
<script type="text/javascript"><!--
var newImgs = new Object();
newImgs["1.gif"] = "画像1URL";
newImgs["2.gif"] = "画像2URL";
newImgs["3.gif"] = "画像3URL";
newImgs["4.gif"] = "画像4URL";
newImgs["5.gif"] = "画像5URL";
var imgHeight = "画像の高さ";
var imgWidth = "画像の幅";
var imgs = document.getElementById("content").getElementsByTagName("img");
for(var i=0;i<imgs.length;i++){
fileName = imgs[i].src.split("/").pop();
fileNum = fileName.split(".");
if((fileNum[0] <= 5) && (fileNum[0] > 0)){
imgs[i].src = newImgs[fileName];
imgs[i].height = imgHeight;
imgs[i].width = imgWidth;
}
}
// --></script>
すみません、返信ありがとうございます。
今現在時間がとれなくて、試す時間がありませんでした。
2~3日中には試させて頂こうと思います。
先ずは返信ありがとうございました!
どういたしまして。
問題があるようでしたらコメントしてください。
どういたしまして。
ベストありがとうございました!


