都道府県市区町村
落書き帳

トップ > 落書き帳 >

メンバー紹介

>
さんの記事が5件見つかりました

… スポンサーリンク …


記事番号記事日付記事タイトル・発言者
[111200]2024年6月15日
[111196]2024年6月14日
[111194]2024年6月14日
[111192]2024年6月14日
[111190]2024年6月13日

[111200] 2024年 6月 15日(土)09:17:05N さん
デフォルト表示バグ
[111197]グリグリさん
デフォルト表示(URL欄正常)→ 島名・湖沼名表示ON(URL欄パラメタ付加正常) → 島名・湖沼名表示OFF(URL欄変化せず)
最後の部分でデフォルト表示に戻りません。プログラム確認してもどこがおかしいのかわかりません。
なるほど、replaceStateの第三引数に空文字入れても意味ないんですね。
第三引数にlocation.pathnameを指定したらパラメータ消せるっぽい(参考)ので、これで動くのではないかと。
if (check1 == '0' && check2 == '1') { window.history.replaceState('', '', location.pathname);}
else { window.history.replaceState('', '', paramstr); }
[111196] 2024年 6月 14日(金)21:55:31N さん
デフォルト表示
[111195]グリグリさん
一つだけ修正したい点があるとしたら、上記のURLを表示させるとブラウザのURL表示が、
https://uub.jp/map_try/kumamoto/?check1=0&check2=1
となることです。デフォルト表示の場合はパラメタを省略(表示させない)できたらパーフェクトです。隣県リンクも含めて。

updateURLでparamstrに設定しているところに条件一つ噛ませればいけませんかね。
if (check1 == '0' && check2 == '1') { paramstr = ''}
else { paramstr = 今まで通り }
[111194] 2024年 6月 14日(金)17:17:02【2】訂正年月日
【1】2024年 6月 14日(金)17:20:06
【2】2024年 6月 14日(金)17:24:22
N さん
こういうことでしょうか?
[111193]グリグリさん
index_try.html表示で地名表示offにした場合と、島名・湖沼名表示onにした場合のJavascriptパラメタをURLに設定する方法が今ひとつ理解できず実現できていません。
別の視点から書くと、チェックボックスで表示を切り替えた際に、ブラウザのURL欄にその変更が反映されれば一番スッキリします。
history.replaceState()で書き換えられそうですね。(参考

雑に書いてみましたが、やりたいことはこういうことですかね?
(開く)実装例
[111192] 2024年 6月 14日(金)09:47:38【2】訂正年月日
【1】2024年 6月 14日(金)10:23:36
【2】2024年 6月 14日(金)10:50:49
N さん
切替先表示など
[111191]グリグリさん
'src'は'src'でよいけど'usemap'は'useMap'なんですね。htmlをきちんと学習していないので抜けているところを実感しました。その辺りの仕様説明の分かり易いページがあれば教えていただけると嬉しいです。
自分もよく知らなかったのでGoogle先生に聞いただけでした(笑
参考サイト

今ひとつURLの設定方法がわかりません。
悩まれているポイントを掴みかねているので、ズレているかもしれませんが。
・基本的なURLのルール
アンカー(#)はURLの末尾(パラメータより後)。
要するに
http~~~.html?<param_name>=...#map
の形にする必要あり。
参考

・画面ロード時にURLパラメータを取得する方法
上記ルールに則ったURLならば、javascriptでは
url.searchParams;
で連想配列が取得できるので、それに対してgetすればOK。(参考
これをready関数
$(function(){ … });
内に記述。

・URLパラメータに応じて<area>タグ内のURLを変える方法
jQueryを使って、
$('map[name="Map"] area').each(function(index, element) { … });
でname属性が"Map"のmap要素の子area要素に対して処理ができる(参考)ので、
「…」部分で
element.href = 'http~~~.html?<param_name>=' + params.get('<param_name>') + '#map'
のようにすれば上書きは可能。

・そもそも
area要素でhrefの代わりにjavascript関数呼び出すonclickイベントを設定して、その処理の中でチェックボックスの状態に応じてlocation.hrefを設定すれば、わざわざmap要素を複数用意する必要ないかも…?

#上記は愚直にこれでできるやろ的な方法なので、もっとスマートな方法もあるかもしれません…
[111190] 2024年 6月 13日(木)18:35:10N さん
useMap
[111183]グリグリさん
最初に書いたimgタグのusemapをJavaScriptに渡して
何か勘違いしているかもしれませんが、maphyoji1関数などでimgタグのIDは渡せているようなので、単純に
document.getElementById(imageID).useMap
で参照・設定できると思いますけど、そのような簡単な話ではなく…?


… スポンサーリンク …


都道府県市区町村
落書き帳

パソコン表示スマホ表示