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

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

新規登録して質問してみよう
ただいま回答率
85.49%
Microsoft Edge

Microsoft Edgeは、マイクロソフト社が開発する新しいWebブラウザです。Windows 10から標準搭載されており、Internet Explorerとは違うレンダリングエンジンが採用されています。

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Internet Explorer

Internet Explorer(IE;MSIE)はマイクロソフトが開発したウェブブラウザです。Microsoft Windowsに組み込まれています。

jQuery

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

Q&A

解決済

2回答

4371閲覧

EdgeがIE互換モードで開いてしまう、jQueryが動かない

nya-3

総合スコア27

Microsoft Edge

Microsoft Edgeは、マイクロソフト社が開発する新しいWebブラウザです。Windows 10から標準搭載されており、Internet Explorerとは違うレンダリングエンジンが採用されています。

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Internet Explorer

Internet Explorer(IE;MSIE)はマイクロソフトが開発したウェブブラウザです。Microsoft Windowsに組み込まれています。

jQuery

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

0グッド

0クリップ

投稿2022/12/16 06:25

編集2022/12/16 06:46

前提

絞り込み機能などをjQueryを利用した
サイトを作成しています。
Chrome、Edgeで動くように作成したいと思っています。

困っていること、Edgeで開けない(jQueryが動作しない)

Edgeのアドレスバー先頭にIEのアイコンがあり、クリックすると
「このページはInternetExplorerモードで開かれています。
このモードでは、InternetExplorerでのみ動作する組織のサイトを
MicrosoftEdgeで開くことができます。
互換モード:IE11
保護モード:無効
ゾーン:イントラネット」と表示されます。

InternetExplorerモード(IEモード)でサイトの読み込みを許可 の設定を
「許可しない」に設定しても動作は変わりませんでした。

EdgeでF12の開発者画面に入ろうとすると、IEモードの為開けませんと表示されます。

IEで開くと
構文エラーです
「if (MyText.every(x=>targetText.indexOf(x)!=-1)) { 」となっており
アロー関数?がNGなのだと思います。
ただ、私はIEで開きたいのではなくEdgeとして開きたいのです。
アロー関数を修正するしか無いのでしょうか?

ソース

HTML

1<html> 2<head> 3<meta charset="Shift_JIS"><!-- 文字化け防止の記述 --> 4<meta http-equiv="X-UA-Compatible" content="IE=edge"/><!--IE互換で開くのをキャンセル(Edgeの時に表示崩れないようにするため)--> 5<link rel="stylesheet" href="style.css"/> 6<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" /> 7 <script src="jquery-3.6.0.min.js"></script> 8 <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> 9 <link rel="stylesheet" style="text/css" href="lightbox.css"> 10 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 11 <html manifest="cache-manifest.appcache"> 12 <meta http-equiv="Cache-Control" content="no-store"> 13</head> 14 <title>テスト</title> 15<body> 16<div style="text-align: center;"> 17 <div class="search-area"> 18  <form> 19   <input type="text" id="search-text" placeholder="検索ワードを入力"> 20  </form> 21  <div class="search-result"> 22   <div class="search-result__hit-num"></div> 23   <div id="search-result__list"></div> 24  </div> 25 </div> 26</div> 27 28<div class="qa-list mts"> 29<h2 id="H1">良くある質問</h2> 30<dl class="qa"> 31<dt id="H1_Q1">テスト①</dt> 32<dd>テスト①、テスト案件 33<br>テストによるテストのためのテスト 34<div class="kensaku">テスト① 35テスト①、テスト案件 テストによるテストのためのテスト</div> 36<br></dd> 37<dt id="H1_Q2">果物といえばなんでしょう</dt> 38<dd>果物と言えばいちごです。、 39<br>クリスマスになると値上がりする気がします。 40<br> 41<div class="kensaku">果物といえばなんでしょうか? 42果物と言えばいちごです。 43クリスマスになると値上がりする気がします。 44</div> 45<br></dd> 46<dt id="H1_Q3">今年はボッチクリスマスですか?</dt> 47<dd>はい、ボッチクリスマスの予定です。 48<br>美味しいケーキでも買おうかと思っています。 49<br><br> 50<div class="kensaku">今年はボッチクリスマスですか? 51はい、ボッチクリスマスの予定です。 52美味しいケーキでも買おうかと思っています。</div> 53<br></dd> 54</div> 55 56<script> 57var words = [ 58{ label: "果物", kana: "くだもの"}, 59{ label: "電気", kana: "でんき"}, 60]; 61 62 63var searchWord = function(){ 64var searchResult, 65searchText = $(this).val(), 66targetText,hitNum,targetID,targetTitle; 67 68searchResult = []; 69searchResultTitle = []; 70searchResultID = []; 71 72$('#search-result__list').empty(); 73$('.search-result__hit-num').empty(); 74 75if (searchText != '') { 76$('.qa-list dt').each(function(e) { 77targetText = $(this).next().children('div').text(); 78targetTitle = $(this).text(); 79targetID = $(this).attr("id"); 80 81searchText=searchText.toString().replace(" "," "); 82let MyText = searchText.split(' '); 83 84if (MyText.every(x=>targetText.indexOf(x)!=-1)) { 85 searchResult.push(targetText); 86 searchResultTitle.push(targetTitle); 87 searchResultID.push(targetID); 88 } 89}); 90 91for (var i = 0; i < searchResult.length; i ++) { 92$('#search-result__list').append('<a href="#' + searchResultID[i] + '">' + searchResultTitle[i] + '</a><br>' ); 93} 94hitNum = '<span>検索結果</span>:' + searchResult.length + '件見つかりました。'; 95$('.search-result__hit-num').append(hitNum); 96} 97}; 98 99$('#search-text').on('input', searchWord); 100 101 $("#search-text").autocomplete({ 102 source: function (request, response) { 103 var list = []; 104 list = words.filter(function (word) { 105 return ( 106 word.label.indexOf(request.term) === 0 || 107 word.kana.indexOf(request.term) === 0 108 ); 109 }); 110 response(list); 111 }, 112 select: function(event, ui) { 113 console.log(ui.item.value); 114 this.value = ui.item.value; 115 $("#search-text").autocomplete("close"); 116 searchWord.apply(this, arguments); 117 searchWord(); 118 return false; 119 } 120 }); 121 122</script> 123</body> 124</html>

試したこと

アロー関数が問題ならばと以下のように修正してみましたが、
他の行で「)が不足している」と表示されてしまいます。

Javascript

1if (MyText.every(function (x){ 2 if(targetText.indexOf(x)!=-1){ 3 searchResult.push(targetText); 4 searchResultTitle.push(targetTitle); 5 searchResultID.push(targetID); 6 } 7}));

確認したいこと

・サイトをEdgeとして無理やり開く方法はありますか?
・上記アロー関数の修正方法は何か間違っていますか?
IEで開いてエラーを確認してみていますが、
}が足りません、)が足りませんばかりで解決に至りません…。
HTMLに記載している他のJavascript項目もNGなのかもしれませんが
何が悪いのか特定できません…。

回答よろしくお願いいたします。

わかったこと

まず、「Googleで検索した場合」は
アドレスバー左側がセキュリティマークになり
IEモードでは開いていません。

私が作ったサイト(社内のイントラ上にあるデータです)だと
「このサイトは安全ではありません」と表示されています。
他の人が同様に社内のイントラ(サーバー)に置いたhtmlデータも、
IEモードで開いているようです。

ただ、動作させたいのでIE11で動くようになれば良いです。
IE11で動くために何が足りないのか、参考になるところや
修正箇所があれば教えてください。よろしくお願いします。

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

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

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

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

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

guest

回答2

0

右上のメニュー(alt+f)から「Internet Explorerモードを終了する」を選んで下さい

投稿2022/12/16 06:31

yambejp

総合スコア114747

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

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

nya-3

2022/12/16 06:36

回答ありがとうございます。 組織が管理しているものだからか、その選択肢がありません。
yambejp

2022/12/16 06:39

選択肢がないということはIEモードでしか動作しないというルールなのでしょう。 そうなるとEdgeモードでどうさせることは組織的に無理だと思います
nya-3

2022/12/16 06:47

「Googleで検索した場合」は アドレスバー左側がセキュリティマークになりIEモードでは開いていません。 私が作ったサイト(社内のイントラ上にあるデータです)だと 「このサイトは安全ではありません」と表示されています。 他の人が同様に社内のイントラ(サーバー)に置いたhtmlデータも、 IEモードで開いているようです。 とりあえずIE11で問題なく動作出来るようになれば見れそうなので そのように作り変えたいです。
yambejp

2022/12/16 06:58

とりあえずjQueryを使っているのであればES6書式はご法度です 古いjsの書き方で代替してください
guest

0

自己解決

Babel
https://babeljs.io/

javascript部分をコピーし、サイトの左側メニューにあるTargetの所に
「ie 11」と入力し、左側にコピペした後、右側に出てきたものをコピペしたら問題なく動作するようになりました。

できたらEdgeとして無理やり開くようにしたかったのですが無理そうなので諦めます。

投稿2022/12/16 07:06

編集2022/12/16 07:22
nya-3

総合スコア27

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問