• ベストアンサー

「thickbox3.1」のボタンをカスタムする方法をご存知でしょうか

「thickbox3.1」のボタンをカスタムする方法をご存知でしょうか。 はじめまして。 自身のサイトで「thickbox」を利用しています。 表示される "<PREV " " NEXT> " " close or Esc Key "を シンプルなボタンのイメージに変更したいのですがやり方が分かる方が いらっしゃいましたら教えて頂きたいと思います。 希望のsampleデザインも添付させて頂きます。

  • kzk78
  • お礼率64% (9/14)

質問者が選んだベストアンサー

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.3

No.2です。 補足でご提示のサンプルを見ると、あえて<img>の挿入は止めてるみたいですね。 詳しく解析してませんが、<a>の子要素に<img>入れるとまずいのかも知れません。 サンプルをまねするのなら、 TB_NextHTML = "<span id='TB_next'><a href='#' id='TB_nextButton'></a></span>"; TB_PrevHTML = "<span id='TB_prev'><a href='#'id='TB_prevButton'></a></span>"; $("#TB_window").append("<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='"+url+"' width='"+imageWidth+"' height='"+imageHeight+"' alt='"+caption+"'/></a>" + "<div id='TB_caption'>" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "</div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'></a></div>"); として、CSSの方で、画像指定してます。 #TB_nextButton{ background: url(/shared/img/btn_next.gif) no-repeat; width:25px; height:25px; padding:0px; margin: 0px 0px 0px 0px; float:left; } #TB_noNext{ width:20px; height:20px; padding:0px; margin: 0px 0px 0px 0px; float:left; } #TB_prevButton{ background: url(/shared/img/btn_prev.gif) no-repeat; width:20px; height:20px; padding:0px; margin: 0px 10px 0px 0px; float:left; } #TB_noPrev{ width:20px; height:20px; padding:0px; margin: 0px 10px 0px 0px; float:left; } TB_closeWindowButton{ background: url(/shared/img/btn_close.gif) no-repeat; width:20px; height:20px; padding:0px; float:left; } これを真似するのが手っ取り早いかと。

kzk78
質問者

お礼

yyr446さま ご回答ありがとうございます。 頂いた内容を真似て早速試してみます。 お忙しい中、ご丁寧にありがとうございます。

その他の回答 (3)

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.4

No1です No2の補足を見る限り、とりあえず目に付くのは「"」「'」の使い分け、あるいはエスケープ。 ダブルクォートの中ではダブルクォートは使用できませんのでご注意。 添付画像は、さっき添付しそこねたShadowBoxの画像です。

kzk78
質問者

お礼

fujillinさま いつもありがとうございます。 お返事が遅れて失礼致しました。 ご丁寧に画像を添付頂きありがとうございました。 今後もギャラリーの使用があるので ShadowBoxも是非試してみようと思います。

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

「thickbox3.1」自体の、初期設定やオプションで、ボタンイメージ を指定する機能はないみたいですが、thickbox3.1のソースコードの 82行目、86行目にある TB_NextHTML = "<span id='TB_next'>&nbsp;&nbsp;<a href='#'>Next &gt;</a></span>"; TB_PrevHTML = "<span id='TB_prev'>&nbsp;&nbsp;<a href='#'>&lt; Prev</a></span>"; の<a>要素の中に自分で用意したボタンイメージを入れれば、出来るんじゃないかと 思います。(試してませんけど)

kzk78
質問者

お礼

yyr446さま はじめまして、 早速ご回答いただきありがとうございます。 再度質問で恐縮なのですが 私なりに教えて頂いた部分を下記のようにいじってみたのですが 画像を表示しようとするとエラーが出てしまいました。 なにか方法がお分かりでしたら教えて頂けないでしょうか。 こちらのサイトのギャラリーを真似たいと思っております。 http://www.shinichiroariizumi.com/works_ladies.html 【<PREVの部分】 TB_NextHTML = "<span id='TB_next'>&nbsp;&nbsp;<a href='#'>NEXT &gt;</a></span>" →TB_NextHTML = "<span id='TB_next'>&nbsp;&nbsp;<a href='#'><img src="images/button_next.jpg" width="15" height="25" alt="button_next" /></a></span>" 【NEXT>の部分】 TB_PrevHTML = "<span id='TB_prev'>&nbsp;&nbsp;<a href='#'>&lt; PREV</a></span>" →TB_NextHTML = "<span id='TB_next'>&nbsp;&nbsp;<a href='#'><img src="images/button_prev.jpg" width="15" height="25" alt="button_prev" /></a></span>" 【close or Esc Keyの部分】 $("#TB_window").append("<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='"+url+"' width='"+imageWidth+"' height='"+imageHeight+"' alt='"+caption+"'/></a>" + "<div id='TB_caption'>"+caption+"<div id='TB_secondLine'>" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "</div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a> or Esc Key</div>"); →$("#TB_window").append("<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='"+url+"' width='"+imageWidth+"' height='"+imageHeight+"' alt='"+caption+"'/></a>" + "<div id='TB_caption'>"+caption+"<div id='TB_secondLine'>" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "</div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'><img src="images/button_close.jpg" width="25" height="25" alt="button_close" /></a> or Esc Key</div>");

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

ざっと見ただけですが 「<PREV」、「NEXT>」の部分はそれぞれ TB_PrevHTML = "<span id='TB_prev'>&nbsp;&nbsp;<a href='#'>&lt; Prev</a></span>"; TB_NextHTML = "<span id='TB_next'>&nbsp;&nbsp;<a href='#'>Next &gt;</a></span>"; のように定義されて、変数で出力されているようなので、ここだけ編集すればよいかと。 closeボタンの方は変数になっていないようで、 <div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a> or Esc Key</div> のような記述になっています。 ただし、こちらはiframeの場合やlayerの場合など表示方法によって、何箇所か記述されているみたいですね。 いずれにしろ、もとがHTMLソースの文字列になっているので修正は比較的簡単かと。 どのような使用法をなさっているか不明ですが、(↑)の情報で自力で修正できないようであれば、似たような機能のものはたくさんありますから自分の気に入ったものを使うという方法もありかと思います。 ご提示に近そうな気がするのはShadowBoxかなぁ…(添付画像参照:デフォルト表示状態) http://www.shadowbox-js.com/index.html (↑いろいろオプションがあるので、カスタマイズ指定もできるみたい)

kzk78
質問者

お礼

fujillinさま はじめまして、 早速ご回答頂きありがとうございます。 先にお返事頂きましたyyr446さまにお返事させて頂いたのですが 画像への差替えがうまくできず悪戦苦闘しております。 何かアイデアがございましたらどうぞよろしくお願い致します。 お礼が再度質問になってしまいすみません。

関連するQ&A

  • thickboxでcloseボタン右上配置する方法

    お世話になります。 thickboxのカスタマイズに関して質問させてください。 現在、自社サイトで画像を大きく表示するためにthickboxを使用ししており、ダウンロード時での標準デザインを自社の雰囲気に合うようにカスタマイズしています。ところがいろいろ調べてもどうしても分からないことがあります。CLOSEボタンの設置です。 標準では、「close or Esc Key」というリンクで閉じるように設計されていると思いますが、これが気に入らないのでTB_Windowの右上端に画像で設置させたいと考えています。 その際、添付画像のほうにTB_Window枠からちょうど半分はみだすような位置に設置させたいです。 具体的にはMySpaceのログインをせずにしばらく試聴したりしてると「ログインまたは登録してください」と要求する表示が出ますがそのような表示をしたいと考えています。 これはどうしれば可能になるのでしょうか。 jsのほうをいじると思うのですが、jsソースはよく分からないので、ご教授いただけたら幸いです。よろしくお願いします。

    • ベストアンサー
    • CSS
  • ThickboxでHTMLを指定サイズで表示したい

    ThickboxでHTMLページを指定したサイズで表示させたい。 お世話になります。 自社サイトでthickboxを使用したいと考えています。既に画像をクリックして大きな画像を表示させる(オーバーレイ表示)ためにthickboxを導入しており、それは比較的簡単だったのですが、今回は別個に作成したHTMLページを同じようなデザインで表示させたいと思っています。 いろいろなサイトを参考にしてこのようなソースになりました。table{width:800px;height:600px}が記述されたsample01.htmlというページをやはりwidth:800px、height:600pxでthickboxでオーバーレイ表示させたいというのが目標です。 <head> <link href="css/thickbox.css" rel="stylesheet" type="text/css" media="all"/> <script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/thickbox.js"></script> </head> <body>~中略~ <a href="sample01.html?width=800px&height=600px" class="thickbox"><img src="images/sample02-small.jpg" alt="画像の説明" border="0"></a> </body> ところが、一応Thickboxは機能するのですが、キレイな形で表示されず、またその理由もよく分からず困っています。初心者なので、つまらないところで行きつまっているかもしれませんが、どうか知恵をお貸し下さい。 ※分からない点 (1)800×600px指定しているのに、小さいサイズで表示され、その文スクロールバーが表示される。インラインフレームのようなデザインにしたくない。 (2)上部にグレー部分ができる(Closeボタン用だと思われるがいらない)。既に画像を表示させる際の場合のように右上部に自分で制作したボタンを配置してCloseボタンとしたい。 既に作成したthickboc.cssは--- #TB_closeWindow{ position:absolute; width:30px; height:30px; top:-15px; right:-15px; } #TB_closeWindowButton{ background-image:url(../images/button-thickbox-close.png); position:absolute; width:30px; height:30px; } (3)表示させたHTMLが文字化けする。 <script type="text/javascript" charset="Shift_JIS"></script>指定しています。 以上です。どうかご教示よろしくお願いします。

    • 締切済み
    • CSS
  • どのボタンが押されたかの判定

    フォームに複数のSubmitボタンがある場合、飛び先のhtmlファイル ではnameとvalueを使えばどのボタンが押されたか判定できますが、 イメージボタンの場合、valueに設定しておいた文字列が取得できま せん。(valueにはイメージが入っている?) <input type="image" name="DayButton" value="Prev" src="images/prev.gif"> <input type="image" name="DayButton" value="Next" src="images/next.gif"> どのようにすればどのボタンが押されたか判定できますか?

    • ベストアンサー
    • HTML
  • ボタン広告を至急作成することに。ボタン広告って何?

    ボタン広告を出してもらえることになったのですが、どのようなものなのかイメージがわきません。今日明日中に作って提出しないといけないのですが、イメージがわかずどのようなものを作成していいのかわかりません。サイズとファイルは指定されましたが、デザイン的にどうすればいいのか困っています。 ボタン広告のサンプルが見れるサイトなどをご教授いただきますと大変助かります。どうぞよろしくお願いいたします。

  • ThickBoxで子ウインドウを閉じると親ウインドウ上のフォーカスが消失

    初歩的な事なのかもしれませんが、ご教授いただけると幸いです。 【実現したい動作】 (1)親画面(.html)のフォーカスが当たっているボタン(id付与済み)を押下時にThickBoxを使用して子画面(.html)を透過表示。 (2)子画面を閉じた際に、フォーカスを元にあった親画面(.html)のボタンに当てる。 【現状の動作】 上記(2)において、子画面を閉じた際に、フォーカスが消失している。 親画面において、Tabキーを連打すると画面上部からフォーカスが下方に移動してくる。 【動作イメージ】 人様のHPで恐縮ですが、下記URLの”Sample”文字がボタン化されて、子画面消去時に、また”Sample”ボタンにフォーカスが当たる動作を期待しております。 http://webtech-walker.com/sample/html/080404/demo4.html 【蛇足】 親画面を最初にロードした際には、子画面表示とは無関係なボタンにフォーカスを当てているため、せめてその状態にしようと子画面消去時に親画面のリロード(window.opener.location.reload())をしてみましたが、全く効果がなくフォーカスが消失しています。 長文で申し訳ありませんが、よろしくお願い致します。m(_ _)m

  • フォームに<INPUT type="image"で画像ボタンをつけたい

    Perl で書いたフォーム要素に画像ボタンを付けたいのですが、画像が表示されません。 次のように、next と prev のボタンに二つの方法で画像を呼び出そうとしましたが。。。 Print <<EOD; <BODY> <FORM method="POST" action="germJ.cgi" name="kdicFORM" target="frame1"> <INPUT type="image" SCR="http://localhost/dic/ArrowMacPrev.GIF"> <INPUT type="image" SCR="/ArrowMacNext.GIF"> ---- </FORM> EOD URL をじかにアクセスするとIE6.0は表示します。 すみませんが、どなたか御教示をお願いします。 さらに、画像が表示された後のこと、つまり「送信」されるデータ(X=nnn, Y=nnn)をどうすればキャッチしてnext/prevの分岐を実現できるか、はつぎの問題なんですが。。  Perl 固有の問題というよりか、javascriptの問題みたいで済みません。

    • ベストアンサー
    • Perl
  • エクスペリアのHOME画面カスタムの方法!

    エクスペリアのHOME画面に関する質問です。 アンドロイダーにあるライブ壁紙のDLLページとかにサンプル画面が載せられていますよね? そこにアップされているサンプル画面にあるメインページの下部に、左から 「丸の中に▲マーク」 中央に大きく「電話マーク」 「十字マーク」 があるデザインになっています。 でも、私のエクスペリアは、2.1にアップデートした初期の状態で、中央にサイコロみたいなマークと左右にページ切替えのマークがあるだけです。 ※たぶん、スタンダードな画面だと思います。 私としては、アンドロイダーに紹介されている中央に大きな電話マークがあるHOME画面にしたいと思って、「ライブ壁紙をインストールすればできるのかな」と安易に考えていましたが、インストールしても壁紙は設定できましたが、下部のボタンデザインは、元のままでした。 やっぱり、これは別の設定が必要なのか、HOMEアプリを落とさないと駄目なのか・・・? 画像を添付しますが、どなたか、添付の画像の下部のようなボタンデザイン(真ん中に大きく電話ボタンがある)に変更する方法を教えて頂けませんでしょうか? 宜しくお願いします!

  • perl BBS(掲示板)で10件ずつ表示する

    perlで掲示板を作製しているのですが、 一度に表示される記事数を10件ずつにしたいと思っています。 その後、nextボタンを押すことで10件ずつ過去の記事にさかのぼっていくようにしたいと思っています。 最初に記事を開いたときに、最新の記事から10件取り出すようにすることはなんとなく分かるのですが、 その後、nextボタンによりさかのぼっていく仕組みが いまいちイメージできなくて困っております。 prevボタンを押すと最新のほうに10件進むようにしたいと思っています。 参考になるURLでもかまいませんので、 アドバイスお願い致します。

    • ベストアンサー
    • CGI
  • 画像スライドのナビゲーション設置

    こんにちは。 先ほど質問させて頂き画像スライドは希望通り出来ました。 http://okwave.jp/qa/q7245904.html $(function(){ var images = $('#setup').find('img'), max = images.length -1, current = 0; images.nextAll().hide(); $('#prev,#next').bind('click', function(e) { images.eq(current).hide(); if(this.id==='prev'){ if(current > 0)current -=1; }else{ if(current < max)current +=1; } images.eq(current).show(); }); }); html <div id="setup"> <img src="*****" alt="*" width="*" height="*"> </div> <span id="prev">前へ</span> <span id="next">次へ</span> ナビゲーションも付ける事が出来たんですが、 もう一つ希望があり、質問させて頂きます。 ナビゲーションの「戻るボタン」と「次へボタン」これを 最初の画像が表示されてる時は、戻るボタンを消し、 最後の画像が表示されている場合は次へボタンを消したいです。 わからないながら試行錯誤し、このように書き足してみましたが動きません・・・ $("#prev").ready(function(){ if( $( '#slideImg img:first' ) ) { $(this).css('display', 'none'); } $("#next").ready(function(){ if( $( '#slideImg img:last' ) ) { $(this).css('display', 'none'); } どうか皆様のお知恵をお貸しください。宜しくお願い致します。

  • フォームの<input type="image"で画像ボタンからの送信内容が分からない

    Perl で書いたフォーム要素に画像ボタンを次のように、next と prev の二つ作り、押した時の送信内容を知りたいのですが、分かりません。どうすればいいのでしょうか?次のようにやっても送信内容が変数$jobに入りません。 #!/usr/local/bin/perl require 'cgi-lib.pl'; &ReadParse(*f); $job = $f{'job'}; print <<EOD; Content-type: text/html; charset=sjis-jp; <HTML> <HEAD> <META http-equiv="Content-Style-Type" content="text/css"> <TITLE></TITLE> </HEAD> <BODY> <FORM method="POST" action="germJ.cgi" name="kdicFORM" target="frame1"> <INPUT type="image" Src="http://localhost/dic/ArrowMacPrev.GIF" name="job" value="prev"> <INPUT type="image" Src="http://localhost/dic/ArrowMacNext.GIF" name="job" value="next"> </FORM> </BODY> </HTML> EOD __END__ すみませんが、どなたか御教示をお願いします。 Perl 固有の問題ではないかも知れませんがお許し下さい。

    • ベストアンサー
    • Perl

専門家に質問してみよう