
現在のページの URL パス名に「/campaign_page/seminar/」または「/forms/」が含まれている場合、そのページ内のすべてのクラスが「.bottom_btn'」という要素に対して非表示にする、というコードを教えていただいたのですが正しく動作せずに困っています。
(回答期限が切れてしまい質問ができなくなってしまったため、再掲載するかたちで投稿しています)
実際に記述したコード
if( /\/(campaign_page\/seminar|forms)\//.test(location.pathname))
document.querySelectorAll('.bottom_btn').forEach( e => {
e.style.display = 'none';
});
デベロッパーツールのconsoleで確認したところ、
Uncaught SyntaxError: Invalid or unexpected tokenというエラーが表示されており、下記の記述に誤りがあるような指摘が返ってきました。
/\/(campaign_page\/seminar|forms)\//.test(location.pathname)
どこか間違っている部分があるのでしょうか?
また.testという部分はlocation.pathnameで取得した値を格納する変数という理解であってますでしょうか。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
ご提示の内容では特に誤りは無いので、行の前後を含めて確認しましょう。
怪しいのは、文末セミコロン漏れ、引用符や括弧の開閉対応不備、全角空白などです。
ブラウザの開発者ツールのコンソールが使えるならば、
計算式が正しいかどうかを実行しながら検証しましょう。
例) コンソールに計算式を打ち込み検証する操作例
> /\/(campaign_page\/seminar|forms)\//.test("/aaa/forms/")
← true
> /\/(campaign_page\/seminar|forms)\//.test("forms")
← false
関数の意味を知りたいなら説明書を読みましょう。
https://developer.mozilla.org/ja/docs/Web/JavaSc …
余談ではありますが、
/\/(campaign_page\/seminar|forms)\//
の正規表現は、どうにも不安が募ります。
new RegExp("/campaign_page/seminar/|/forms/")
の様にエスケープや括弧を多用せずに読みやすくしては如何でしょうか。
特に初心者の場合は、読みづらい正規表現がバグの温床になりがちです。
ご提案いただいた下記コードに書き換えてみたところ、思い通りに動作しました。ご丁寧にご説明いただきありがとうございました。
new RegExp("/campaign_page/seminar/|/forms/")
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 指定したパスが現URLに含まれていたら特定要素を削除するJavascriptのコードを教えてください 2 2023/04/27 17:58
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- PHP PHP ページング データベース 1 2022/06/16 10:30
- PHP PHP MySql ページング 2 2022/09/20 06:38
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- PHP php 入力画面から確認表示画面へ情報の受け渡しについて。 1 2023/06/07 18:00
- その他(プログラミング・Web制作) pythonでのカーソル移動がずれる 2 2023/07/30 08:51
- JavaScript JavaScript|特定URLだった時、特定の要素を変更するコードの書き方を教えてほしいです 2 2023/08/25 21:43
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プルダウンメニューのリンク
-
getElementByIdで謎のエラーが...
-
IEにおいてjqueryが動いてくれ...
-
JSPの処理の途中で、JavaScript...
-
htmlのfileタグに自動で値を入...
-
VBを使ってのタイピングについて
-
以下のコードを実行しても、オ...
-
HTML上(javascript)からCGIを...
-
F8のステップインで実行すると...
-
文字認証の問題
-
i-modeページで使用可能ですか?
-
イベントの発生
-
Javascriptが開けません。
-
AccessVBAで教えて下さい。
-
Excel 2003 VBAにてマクロの実...
-
VBAによる第3、4水準文字の判定...
-
ポップアップヘルプをフレーム...
-
1つのVBAコードをすべてのコア...
-
AJAX→PHP -DB(MySQL)- PHP→AJAX...
-
自サーバに置いたWEBページから...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
javascript + php でエラー
-
オブジェクトでサポートされて...
-
getElementByIdで謎のエラーが...
-
confirm()をはい/いいえ に切...
-
NetscapeCommunicator4.7でJava...
-
javascriptとHTML
-
ホームページビルダーでスクリ...
-
エラーが出ている箇所を調べるたい
-
PDFフォームで条件つき金額を表...
-
同じ記述でもサブウインドウが...
-
IEで見ると「構文エラー」にな...
-
Syntax errorって?
-
JavaScriptでVBのOption Explic...
-
javascript:void(0)とは何でし...
-
vba ie操作 ボタンを押...
-
初歩的な質問かもしれませんが...
-
HtmlからExcelを操作したい
-
HTAで,親ウインドウを閉じ...
-
Safariではロールオーバーが正...
-
IE9でJavaScriptが動きません。
おすすめ情報