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

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

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

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

Q&A

3回答

695閲覧

IEでも動くようにしたいです。

退会済みユーザー

退会済みユーザー

総合スコア0

JavaScript

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

0グッド

2クリップ

投稿2021/11/22 06:41

下記のjsは、
・画像をダウンロードしてページ移動するjsなのですが・・・IEでは画像のダウンロードの部分が利きません。

少しjs詳しい友人に相談したところjs部分をIEとchrome用で二つに分けて作らないとダメだと言われたのですが、
そういうものなのでしょうか?
できれば一つのjsでIEにも対応するように作りたいのと、なぜIEでは利かないのかの理由が分かりましたらご教授頂けますでしょうか。

window.addEventListener('DOMContentLoaded', ()=>{ document.querySelectorAll('[data-href]').forEach(x=>{ x.addEventListener('click',()=>{ location.href=x.dataset['href']; }, 5000); }); }); </script> <a data-href="https://mnakashi.web.fc2.com/test/2.html" href="https://mnakashi.web.fc2.com/test/sample.png" download="sample.png">ダウンロード</a>

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

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

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

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

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

guest

回答3

0

なぜIEでは利かないのか

アロー関数(=>)がieで非対応です。functionで書き直せば問題ないかと思います。


ただし、IEはもう開発が終了しているので、今後は「IEが非対応」な機能性は増える一方となります。IE対応の必要性と、そのために回せる開発工数を考えて、対応するかしないか自体を検討する必要があります。

投稿2021/11/22 06:47

maisumakun

総合スコア145208

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

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

0

IEはアロー関数とアンカーのdownload属性に対応していません
hrefの先がサーバーサイドでダウンロード用のヘッダはいてくれるような
仕組みが必要だと思います。
外部サイトではなく同じサイト内ならajaxでデータをうけとってBlobで受けておいて
window.navigator.msSaveOrOpenBlob()でダイアログを出す方法もありますが
そこまでする必要があるかよく検討した方が良いと思います

投稿2021/11/22 06:47

編集2021/11/22 07:11
yambejp

総合スコア115010

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

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

0

es6で書いて問題ないですが、IEサポートしたいなら、babelなどでes5へコンパイルする必要があります。

https://www.i-ryo.com/entry/2020/01/11/211504#ES6ES2015%E3%81%AE%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6%E5%AF%BE%E5%BF%9C%E7%8A%B6%E6%B3%81

投稿2021/11/22 06:56

heroyct

総合スコア434

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問