質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Cookie

HTTPにおけるCookieとは、クライアントのウェブブラウザ上に保存された一時的なデータを指します。クライアント側のJavaScriptでも、サーバー側のHTTPヘッダーでもクッキーの読み書き・修正・削除が可能です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

7087閲覧

文字サイズ変更ボタンを実装したい。(参考URLあり)

harebareyukai

総合スコア15

Cookie

HTTPにおけるCookieとは、クライアントのウェブブラウザ上に保存された一時的なデータを指します。クライアント側のJavaScriptでも、サーバー側のHTTPヘッダーでもクッキーの読み書き・修正・削除が可能です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2018/08/05 10:38

こちらを参考に、
文字サイズ変更ボタンを実装しましたがうまく行きません・・・。
ボタンは「小」「中」「大」の3つ。
そもそもボタンが押せるようになりません。
ご教授いただけないでしょうか。
よろしくお願い致します。

html

1<div id="memo" class="sizeM"> 2 <p>この文字のサイズを<br> 3 サイズ変更ボタンで<br> 4 変更させたいのです</p> 5</div> 6 7 8<ul id="fontChange"> 9 <li id="sizeS"></li> 10 <li id="sizeM"></li> 11 <li id="sizeL"></li> 12</ul>

CSS

1.sizeS { 2 font-size: 14px; 3} 4 5.sizeM { 6 font-size: 16px; 7} 8 9.sizeL { 10 font-size: 18px; 11}
<!-- jQuery --> <script type="text/javascript" src="../jquery-1.4.2.min.js"></script> <script type="text/javascript" src="../jquery.cookie.js"></script> <script> jQuery(function($){ //変数にクッキー名を入れる var history = $.cookie('fontSize'); //適用する箇所を指定。 var elm = $('#memo'); //変数が空ならfontMを、空でなければクッキーに保存しておいたものを適用 (!history)? elm.addClass('fontM'):elm.addClass(history); //クリックしたら実行 $('#fontChange li').click(function(){ //クリックした要素のID名を変数にセット var setFontSize = this.id; //クッキーに変数を保存 $.cookie('fontSize', setFontSize); //一度classを除去して、変数をclassとして追加 elm.removeClass().addClass(setFontSize); }); }); </script>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

harebareyukaiさんが掲載しているコードをコピペして動かしてみましたがそのままで動きました。
プラグインとjQueryへのパスのみ同じディレクトリに設置したので変更したましたがそのほかはインデント整形等もしていません。
記述方法に間違いがあるか、パスが間違っているか、ダウンロードするファイルを間違っていると思われます。
下記のコードをコピペして、ダウンロードしたものを同じディレクトリに移動してテストをしてみて下さい。
それでも動かない場合はダウンロードしたファイルが違うものをダウンロードした可能性があるのでダウンロード先のリンクを記載して下さい。
間違っていないかテストしてみます|ー゚)

html

1<!DOCTYPE html> 2<html> 3<head> 4<meta charset="utf-8"> 5<style> 6.sizeS { 7 font-size: 14px; 8} 9 10.sizeM { 11 font-size: 16px; 12} 13 14.sizeL { 15 font-size: 18px; 16} 17</style> 18<!-- jQuery --> 19<script type="text/javascript" src="jquery-1.4.2.min.js"></script> 20<script type="text/javascript" src="jquery.cookie.js"></script> 21<script> 22jQuery(function($){ 23 //変数にクッキー名を入れる 24 var history = $.cookie('fontSize'); 25 26 //適用する箇所を指定。 27 var elm = $('#memo'); 28 29 //変数が空ならfontMを、空でなければクッキーに保存しておいたものを適用 30 (!history)? elm.addClass('fontM'):elm.addClass(history); 31 32 //クリックしたら実行 33 $('#fontChange li').click(function(){ 34 35 //クリックした要素のID名を変数にセット 36 var setFontSize = this.id; 37 38 //クッキーに変数を保存 39 $.cookie('fontSize', setFontSize); 40 41 //一度classを除去して、変数をclassとして追加 42 elm.removeClass().addClass(setFontSize); 43 }); 44}); 45</script> 46</head> 47<body> 48 <div id="memo" class="sizeM"> 49 <p>この文字のサイズを<br> 50 サイズ変更ボタンで<br> 51 変更させたいのです</p> 52 </div> 53 54 55 <ul id="fontChange"> 56 <li id="sizeS"></li> 57 <li id="sizeM"></li> 58 <li id="sizeL"></li> 59 </ul> 60</body> 61</html>

投稿2018/08/08 14:36

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

harebareyukai

2018/09/05 09:17

jsの読み込みがうまく行かなかったのか、記述し直すとうまく行ったようです!
guest

0

1)以下の2つのJavaScriptは読み込みできているか確認してください。

html

1<script type="text/javascript" src="../jquery-1.4.2.min.js"></script> 2<script type="text/javascript" src="../jquery.cookie.js"></script>

2)リストタグをblock要素にして要素全体をクリックできるようにしてみてください。

(スタイルシートの例)

stylesheet

1#fontChange li { 2 display:block; 3 width:30px; 4 height:30px; 5 text-align:center; 6} 7#fontChange li:hover { 8 background-color:#333; 9 color:#fff; 10 cursor:pointer; 11}

投稿2018/08/05 10:49

編集2018/08/05 14:03
w2-yamaguchi

総合スコア167

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

harebareyukai

2018/08/05 13:03

回答どうも有難うございます。 1)読み込みは出来ているようでした。 2) block要素にすると押せるようになりました!有難うございます。  (inline要素だとクリック出来ない仕様なのでしょうか?) #fontChange li などの要素の指定の記述が間違っているのか、javaScriptの記述場所が良くないのか・・・;;;
w2-yamaguchi

2018/08/05 14:01

inline要素でもクリック可能です。(文字の部分を正確にクリックしてあげると動作すると思います) liタグなどのinline要素をボタンとして扱う場合は、block要素にするのが一般的です。 ※回答の"block要素にして押せるように"という表現は、inline要素だと押せないような表現となっているため、修正します!すみません。
harebareyukai

2018/08/05 14:06

>liタグなどのinline要素をボタンとして扱う場合は、block要素にするのが一般的です。 確かに、block要素にすることで押せる範囲が広がりますね。勉強になります。ご丁寧に有難うございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問