ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

HTML,CSS,JS,AJAXのデバッグをブラウザで行う「開発者ツール」の概要(Chrome編)

2025-01-07 06:58:42 | JavaとWeb
年末年始のまとめ第二弾(第一弾はアマチュアオケ)
ブラウザのF12キーを押すと、「開発者ツール」というのが出てきて、
HTML,CSS,JS,AJAXのデバッグができるんだけど、
F12キーを押したあとで、どうするのかについて、
まとめてみる

今回はChromeについて、
(気が向いたら、いつかedgeについても)
書いてみたいと思います。


■開発者ツール(Chrome編)
 Webブラウザ上でファンクションキー(キーボード一番上の行)のF12と書かれたキーを押すと、↓のように
右側に「開発者ツール」というのが出てくる。
(別ウィンドウで出てくることがある)
赤枠のタブのところを切り替えることによって、
HTML/CSSやJSやAJAXのデバッグに切り替えることができる



■Elements(要素)ーHTML,CSSのデバッグ

まず、赤枠のタブで、英語表示の場合Elements、日本語表示の場合「要素」をクリックする。

すると、現在表示している画面のHTMLが、右上に表示される。
このHTMLの文中をクリックすると、そのクリックした部分に相当する画面部品が、左側に表示されていれば、そこが反転する。
そして、その個所にかかっているCSSが、右下に表示される

↓の例はタブのところのHTMLを選択した場合
逆に左側の画面部品を選択し、右側にHTML、CSSを出力したい場合は、↓の記事に書いたので、そちらを参照



■Console(コンソール)エラーを表示する

つぎに、Consoleというタブをクリックすると、↓のようにコンソール画面になる、
右側のウィンドウにエラーメッセージなど、コンソールに出力するものがここに表示される。リンクの形になっているものは、そこをクリックすると、その個所に飛ぶので便利



■Source→Javascriptのデバッグ

つぎに、Sourceと書かれたタブをクリックすると、↓のように、表示している画面が読み込んだJavaScriptが表示される。そのJavascriptをクリックすると、右側に、そのJavascriptの内容が表示される。

この画面からブレークポイントをはり、デバッグすることができるが、そこまで書くと長くなるので、別の記事で取り上げることとし、今回はここまで。



■Network→AJAXのデバッグ

次にNetworkというタブについて説明したいんだけど、
そのままでは見れない。

タブに「>>」というところがある。
そこ(↓の図の赤枠)をクリックすると、見えていないタブが選べる。

今回はここからNetworkを選択する
全宅すると、右側に、Javascript内でアクセスしたAJAXの一覧が表示される


右側に現れたAJAXの1つを選択すると
↓のように選択したAJAXの呼び出しや戻り値について表示される



■Application→localstorage、クッキーなどの内容表示
 ほかにもいろいろあるんだけど・・・
 とくに、localstorage、クッキーなどの内容表示として、Applicationを紹介しておきます。Networkのところで示した、「>>」タブをクリックすると出てくる一覧から、Applicationを選択。すると、↓のように右側にツリーが出てくる

ツリーでStorageの下に、LocalStorageというのがあるから、
その▶を選択(クリック)して中を出させ(▼になり、下に展開される)、
それをクリックすると、
右側にLocalStorageの内容が展開される。
クッキーも同様(Cookieの▶を選ぶ)



概要はこんな感じ。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

今カーソルが当たっている個所のHTMLと、そこにかかっているCSSを、一撃で知る方法(ChromeとEdgeの場合)

2024-12-05 06:56:43 | JavaとWeb
ブラウザで表示している画面のHTMLやJavascript,CSSを知りたい場合は、
F12キーを押して、「開発者ツール」を出すと知ることができる
(デバッグできる)けど、めんどくさい。

いま、カーソルが当たっているところ、フォーカスしているところの
HTMLや、そこにかかっているCSSを一発で見る方法を最近知ったので
(みんな知ってるかも?)メモメモ
先にChrome版を紹介して、そのあとにEdgeの場合を紹介



■Chromeの場合

フォーカス、カーソルが来ているところで
・マウスの右ボタンをクリック
・メニューが出たら、一番下の項目を選ぶ(英語でも日本語でも)
  →下の図の赤枠
すると、右上(または別ウィンドウ左)HTMLがでてくる。
ハイライトされているところが、フォーカス部分のHTML
 →下の図の赤枠
右側に出る場合には右下、別ウィンドウの場合は右側に、
フォーカスされたところにかかるCSSが出ている
 →下の図の緑枠
CSS名のところをクリックすると
 →下の図の青枠

そのCSSが表示される
 →下の図の赤枠




■Edgeの場合
 Chromeの場合と全く同じなので、
 文字部分はコピーして同じものを書き、
 図だけEdgeのものに、差し替えておきます。

フォーカス、カーソルが来ているところで
・マウスの右ボタンをクリック
・メニューが出たら、一番下の項目を選ぶ(英語でも日本語でも)
  →下の図の赤枠

すると、右上(または別ウィンドウ左)HTMLがでてくる。
ハイライトされているところが、フォーカス部分のHTML
 →下の図の赤枠
右側に出る場合には右下、別ウィンドウの場合は右側に、
フォーカスされたところにかかるCSSが出ている
 →下の図の緑枠
CSS名のところをクリックすると
 →下の図の青枠

そのCSSが表示される
 →下の図の赤枠



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Javaのジェネリック(<T>ってやつ)について聴いてきた!

2024-11-07 07:05:55 | JavaとWeb
10/27、JJUG CCCに行ってきて聴いてきた話。
最後はジェネリック。
JavaでArrayList<string>なんていうときの< >の部分のお話↓。



おまけ:いままでのJJUG CCCレポート

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Javaのバージョンアップに伴い、変更された箇所を調べるには?

2024-11-05 07:21:51 | JavaとWeb
Javaのバージョンアップに伴い、
どのようなクラス・メソッドが追加されたか、
非推奨、削除になったかは、
リリースノート、以降ガイドなどで分かるけど、
バージョンアップによって変更された内容などは、
載っていなかったりする。


そういう

   Javaのバージョンアップに伴い、変更された箇所を調べるには?

ということを、10/27、JJUG CCCに行ってきて、
 「失敗しないOpenJDKの非互換調査」
で聴いてきたので、シェア



結論から言うと、変更箇所は
CSRドキュメント
を見ると載っている。
CSRドキュメントは、Java Bug System
のSearch欄に"CSR"と入力すると出てくる

では、以下↓、聴いてきた内容です。

新卒2年目だそうだけど、
わかりやすくてためになる発表でした。

おまけ:いままでのJJUG CCCレポート


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

JAVAのWebフレームワークの現状とかMicroProfileについて聞いてきた

2024-10-28 07:10:03 | JavaとWeb
10/27、JJUG CCCに行ってきて、いろいろお話を聴いてきたんだけど、
多分、後ろから話したほうがわかりやすいので、まずは、
最後に聴いてきた、きしださんの
「JAVAのWebフレームワークの現状」
についてシェア↓

JavaでWebアプリを作るとすると、
・HTTP処理
・Webアプリケーション処理(共通部分)
・サーバー管理
・開発部分
の共通部分と、アプリケーション固有の部分があるんだけど、
この共通部分を提供してくれるのがフレームワーク。

このフレームワークは、以下のように発展してきた
・サーブレットコンテナ
・埋め込みサーバー
・Docker利用
・サーバーレス
この発展の流れに沿って、話を進めて言っている。
で、次の話
「サーブレットコンテナ」は、TomcatのようなWebサーバーを立ち上げて、そこに複数のWebを用いた業務アプリをサーブレットとして作成していく形。
Strutsなどはこの形。

この形は、サーバーが1つの場合はいいんだけど、マシン処理の限界などから、複数のマシンを束ねてクラウドとして実行する場合、クラウドのメリットを享受できなかった。というか、クライドには向いていない。

そこで、埋め込みサーバー型のフレームワークが出て来た。
これはサーバーも埋め込んでいるので、1つのアプリケーションとして動いて、それをクラウドで動かすという形。
で、話はさらに進む

一方、クラウドの世界では、Dockerが出て来たので、
そのDocker上にフレームワークを載せるという形になってきた。

さらに、クラウドがマイクロサービスを行うようになると、
そのマイクロサービスに対応したMicroProfileが
注目されるようになってきた
その一方で、JavaEEは、クラウドに対応し遅れたため凋落。
また、Oracleのバージョンアップも遅かったので、
それに反発した人たちがEclipseファンデーションベースに
JavaEEに相当するものを作った
(が、名前はJavaとは商標上つけられないので)
それがJakartaEE

今ではマイクロサービスがさらに進み
サーバーレスとなっている
ここに及んでJakartaEE10では、サーブレット非依存となった。

っていうお話。
コンパクトにまとめられていて、いままでのJavaをめぐるフレームワークとかの話が分かる、いい講演でした。

ってことで、MicroProfileの話。
きしださんの前は、そのMicroProfileの最新状況(7.0)を聴いてきました!

7.0の変更はそんなになかったみたい。
この前は、ちょっとおひるお休みして、
午前中に聴いたセッションになるんだけど、
話が全然違うので、またいつか、それについては書きます。

今日はここまで



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

SpringBootとMicroProfileどっちがいいか、聴いてきた。

2024-06-20 07:08:42 | JavaとWeb
JJUG CCCで
講師の結論は「どっちもどっち」っていうことだったんだけど、
普通に聴くとSpringBootの
話の内容は↓

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

今、一番使われているJavaのLTSは

2024-06-19 07:12:52 | JavaとWeb
Java17
とかいう、今Java関連で流行っているものについて
JJUG CCCで話してたのでメモメモ
講師はNew Relic株式会社の人なんだけど、
サイト↓に、このお話の内容があるみたい!

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

「Java First Java always」を聴いてきた

2024-06-18 18:30:33 | JavaとWeb
6月16日のJJUG CCCで、基調講演
「Java First Java always」を聴いてきた
英語なので、一部そのまま英語で書いてたり、
間違えていたらゴメン

主な話は、

前半はJavaのリリーススタイルの変化について
・安定したものが欲しいという要望と
・早く新しい機能を入れてほしい
という要望を満たすため
・半年ごとのリリース
・LTS
というリリースになったということ

後半はJavaとAIについてなど


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

「Spring for GraphQLの実践」を聴いてきた!

2024-06-17 07:09:55 | JavaとWeb
6月16日(日)、JJUG CCC に行ってきて、
「Spring for GraphQLの実践」
を聴いてきたので、メモを貼っておきます
GraphQL知らないので、基本的なこと聴けるかなと思っていったのですが
甘かったでした。バリバリ実践話。自分はわかってないので、
適当に脳内補完しながら書いているので、
間違ってたらゴメン。

話しとしては、
  リゾルバとして、どんなMappingが必要か
    @QueryMapping
    @MutationMapping 変更(更新)するとき
    @SchemaMapping
    @BatchMapping
    @EntityMappingの利用
  ソースを自動生成・バリデーションしているところとそのツール
    DGS Codegen
    Apollo Codegen
    graphQL-java-extended-validation
  認可処理
  テストについて
    HttpGraphQlTester
    WebSocketGraphQlTester
    ExecutionGraphQlTester
  認可のテスト 
なんていうところのように聞こえました。
勘違いしてたらゴメン

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

MMD(初音ミク)がサポートされたオープンソースのJavaScriptライブラリBabylon.jsのありか

2024-04-10 08:58:12 | JavaとWeb
↓の記事
にある、MMDを動かしたり、その他いろいろできるオープンソースのJavascriptライブラリBabylon.jsのありかは、↓


MMD用チュートリアルは↓

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

HTMLの各要素に、どのCSSがかかっているのかがわかる、ChromeのF12キー

2024-02-21 12:49:35 | JavaとWeb
■ChromeのF12キーって、便利ですよね!

たとえば、↓の画面で
文字が赤くなっているけど、

「いや、CSSでは、青って書いたんだけどなあ~」
っていうとき、
ブラウザがChromeで開いているのなら、



■F12キーを押してもらうと、

 ↓のようにソースコードが右側に(場合によっては別ウィンドウ)ででてくる。出てこなかったら出て来た右上のウィンドウのタブをElements(赤枠)にすると見えるはず。



 ここで、…と3点リーダーになっているところ(青枠)があるから、そこをクリックしていくと、中のソースが見えてくる(ソースコードの中にまた…が見えたら、そこをクリックしていく)。

 見たい対象のソースコード(今、テキストボックス内の赤字になっているところが見たいので、そのテキストボックス)のところまで開いて、ソースコードが出てきたら、

そのソースコードの行(テキストボックスの行)をクリック
↓の図のようにその行が反転し、いろいろ表示される



■F12キーを押すと見えるもの



表示している画面(左側)のところ(赤枠のところ)に、
今、ソースコードの対象行にあたる要素が
   どういうタグのどんなIDで、どんなクラスか
   その大きさがどのくらいか(ピクセルで)
が出てくる(textarea#A1.aと書いてある赤枠のところ。textareaがタグ、A1がID、aがクラス)

 また、右下に、そのHTMLにかかっているCSSが表示されている(青枠のところ)。上から、かかっているCSS順に表示されている。

 各CSSの右側にそのソースのCSSファイル名(.css)が表示されている(黄色枠)

 一番下のCSSのところはuser agent stylesheetってあるけど、それがデフォルトでブラウザが設定するもの(=CSSの設定がなければそれが出るはず)

 取り消し線が引かれているのは、適用されていないのを示す。
 この例だと、a.css(黄色の枠の下の方)のcolorに線が引かれている。
 この場合は、そのCSSは無効になっている。
 そして、それより上のCSSで有効になっているものがあることを示している。



■上の例だと、

 b.cssのcolorが線が引かれていない。なので、これが生きていることになる。
 実際、左の画面では、colorが赤=文字が赤になっているし、
 b.cssのソースをみると

color:redになっていて、index.htmを確認すると
b.cssがa.cssより下に来ているので、これがきいていることがわかる



■かかっているCSSをきかせないとどうなるかも調べられる

このように、Chromeで表示した後、F12キーを押せば、
HTMLの各要素に、どのCSSがかかっているのかがわかるけど、
それだけじゃなくって、値を修正したら、どうなるかがわかる。
有効なCSSに対して、左側にマウスポインタを置くと

チェックボックスが出てくる(redのところ)
このチェックボックスのレを外すと(クリックすると)、こいつを執行しない場合、何が有効になるかがわかる

color:redに取り消し線が引かれ、color:blueが有効になり、
左側のテキストボックスの文字が青くなった。

※ちなみに、無効になっているところもチェックボックスがあって、
このチェックも外せるけど、外しても(もともと無効だから)何も起こらない。無効なCSSを、実際に有効にするには、CSSの順番を変えるか、!importantをつけることだけど、それにはソース修正が必要なので・・・下を見てくれ)



■ここから、CSSの値を変えることもできる。

!importantとかもつけられる。
 値のところをクリックすると、入力できるようになる
↑の例では、color:blueのblueをクリックしている
(表示はredが生きるように元に戻した)

ここに「green !important」と入力すると、
緑色にテキストボックスの文字が変わっている。

ということは、(上位にあるはずのredがきいていないので)importantも有効になっている(色だけ変えることももちろんできる。ただここでgreenと変えても、取り消し線が引かれるだけ。緑色に変えたい場合は、普通はredのところを直すべき。ここではimportantがきくよ!ということを示したかったので、blueを直した)



■修正は、これだけにとどまらない。CSSの行を追加することもできる。

各CSSの一番最後の行の下のほうをクリックすると、新しい行が追加される
↓の図は、color:redの下(赤枠)をクリックしたところ。クリックすると:が出て(:が出て来たところを撮っている)、1行入力できるようになる。
backgroundを設定してみた↓




■CSSを追加できることもできる
セレクタを変えて、CSSを追加したい場合は、
各CSSの枠の右下の端のところにマウスポインタを置く。すると
↓の図のように十字(+)が出てくる

ここをクリックすると、CSSを書くことができる。
全体(html)の文字色を変えてみました(赤枠)



■カスタムプロパティでもっとすごいんだけど・・・

さらにレスポンシブWebデザインなんかするときに、カスタムプロパティを使った場合、このF12キーを使うと便利便利!なんだけど・・・

 そもそも、「カスタムプロパティって何!」から説明しないといけないですよね・・でも、そこから書いていくには、もうこの記事長くなりすぎているので、それは別の記事に書くこととし、この記事は、この辺で終わりにします。

※今回はChromeで書いたけど、Microsoftのedgeでも、f12キーを押すと似たようなことができるみたいです(Edgeのほうは、ほとんど知らない。開発ではChromeを使うので)



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

input searchで入力すると出てくるXの色を変えるには?

2024-02-11 09:10:21 | JavaとWeb
htmlのタグinputには、type ="search"というのがある↓。

このタグを使うと、入力するとき、Xが出てきて、

このXをクリックすると、入力内容がすべて消える

ここで、入力領域を、↓のCSSのようにすると

.answer {
color:white;
background:black;
}

(つまり、入力領域の文字を白、背景を黒にすると)

Xだけ、白くならない。このXの色を白くするには?というのがお題。



■失敗:-webkit-search-cancel-buttonでは、色は変わらない
このXは、-webkit-search-cancel-buttonで、表示したり、削除したりできる。
例えば、表示を消すには、

input[type="search"]::-webkit-search-cancel-button {
   -webkit-appearance: none;
}

で消える。じゃあというので、同じ理屈で、
input[type="search"]::-webkit-search-cancel-button {
   color:white;
}

とやっても、Xボタンは白くならない。



■白く変えればいい場合

で、色を変えるとき、白く変えればいいだけであれば、
「color-scheme」
を使えばできる。color-schemeを

:root {
color-scheme:dark;
}

と記述すると、↓のように、周りが黒くなって、Xが白くなる。
また、フォーカスが当たった時、白くなる

周りも黒くなってしまうのは、困る。
そこで、color-schemeをroot(つまりhtml全体)にではなく、input[type="search"]に適用し、
さらに、フォーカスが当たった時、白くするのをやめさせる(outline:0)
と、思ったような感じになる。

まとめると、CSSは、こんな感じ

.answer {
color:white;
background:black;
}


input[type="search"] {
outline:0;
color-scheme:dark;
}


そうすると、こんなかんじ


■白以外の場合

自分の場合はこれで済んだんだけど、白以外のXにしたい場合は…
Xのアイコン画像を変えるとできるのかなあ~(やってないです)
詳しくは、↓のサイトにあるみたい


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

VMWereって、買収されてたの知ってた?で、Springは今、ブロードコムが扱ってるらしい

2024-02-06 07:18:24 | JavaとWeb
2月2日にあった、JSUG勉強会2024その1 
Spring for GraphQL入門、そしてSpring Boot 3へのマイグレーション
の話をYouTubeLiveで聴いたんだけど
その話を報告していないので、メモ



Spring for GraphQLは、
JavaのフレームワークSpringで、
(DBに依存しないで)データ検索・更新を行うための言語GraphQL
を使うライブラリ。

今回の勉強会では、その概要と書き方(デモ)をやっていたんだけど、
デモ・書き方部分は、メモってない

それと、SpringBootの2系のサポートが終わり、3系になっているので
そのマイグレーションについて。

終わりの方の10分間で、
以前、Springを扱っていたVM Wareをブロードコムが買収し、
その結果、今ブロードコムがSpringの有償サポートをしていて、
NECと協業していることを説明してた



以下、その時のメモ



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

JavaのSpringフレームワークのアプリを生成AIで作成する話とかをちょこっと聞いた!

2023-12-14 08:10:13 | JavaとWeb
12月11日、JSUG勉強会の「Spring One報告会」を
YouTubeライブで見たので、そのまとめをシェア

Spring Oneは、JavaのフレームワークSpring
(NTT Dataの開発フレームワークTERASOLUNA(テラソルナ) 
 なんかでも採用されている)
のカンファレンス。

ことしは、JDK21対応として、バーチャルスレッドやCRaCのほかに、

Springから生成AIを呼び出すフレームワーク
Intelligent Beans with Spring AI

や、

Springアプリを生成AIで作成する(Spring CLIの1機能である)
Spring AI Add

なんかのお話もあったみたい。

では、以下シェア

Spring AI Addって、これかなあ?

Intelligent Beans with Spring AIのSpring Oneでのお話は
↓みたい




  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

JJUG CCCで、Jakarta EEをキャッチアップしてきた!

2023-11-14 07:19:24 | JavaとWeb
11月11日の、JJUG CCCの話つづき。
Java21のあとは、
Jakarta EE 11 キャッチアップ
を聞いてきました。



 Jakarta EE とは、Javaでサーバーサイドのアプリケーションプログラムを作成する際のプラットフォーム標準を決めたもので、この実装としてGlassFishやPayaraがある。
 ちなみに、Jakarta EEのほかに、Javaのサーバーサイドのアプリケーションプラットフォームとしては、Springがある(って、今回の講師の人は説明してました。少なくとも私はそう理解した)。

 日本の開発においては、サーバーサイドのプログラム・運用だけでなく、それらを含めて開発全体を統合環境としてSIerごとに提供している。

 たとえば、NTTDataさんの場合は、TERASOLUNA(てらそるな)という統合開発環境があって、この中では、Springフレームワークを採用している

 一方、富士通は、Interstage(いんたーすてーじ)という統合開発環境があって、この中では、GlassFishを基にしたサーバーが提供されている(自分の記憶が正しければ、たしかGlassFishそのものではない)。
 その実装されているJakartaEEのバージョンは、11ではなく、ネットで見つかったのだと8が最新なのかな・・・そうなのかな?
 あれ、↑の説明だと、JakartaEE8もサポートしているけど、Springもサポートしているとか。最近、データさんの仕事ばかりで、富士通さんの仕事はしていないので、よくわかりません・・・



世間話長くなりすぎました。聞いてきた内容は↓のとおり



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする