0

HTML5のドラッグアンドドロップに依存するWebサイトのセクションがあります。ホームページでユーザーにブラウザがサポートしているかどうかを警告するサイトが欲しいのですが、Modernizrを使用しようとしましたが、成功しませんでした。

modernizrサイトを使用してカスタムファイルを作成しました(このインスタンスに含まれているファイルでは、すべてのHTML5オプションが選択されています)が、何も実行されません。私はいくつかを作成しようとしましたが、喜びはありませんでした。

    <!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
<script src="js/modernizr.custom.75231.js"></script>
<script>

   if(Modernizr.draganddrop){
      alert("Your browser supports drag and drop!!");
   }else{
      alert("Sorry, browser does not support drag and drop!");
   }

</script>

</head>

<body>
Some text
</body>
</html>

私は何かが足りないのですか?

ありがとう

更新するために、すべてのCSSオプションを含むmodernizrファイルを再度作成しました。これで、ドラッグアンドドロップ互換として7を含むすべてのブラウザーが検出されます。

js/modernizr.custom.18141.js
4

3 に答える 3

1

私が変更され

if(Modernizr.draganddrop)

if (window.FileReader && Modernizr.draganddrop)

そしてそれはうまくいきました

于 2012-11-05T00:21:59.327 に答える
0

その少しトリッキー。iOS7は、FileReaderとドラッグアンドドロップの両方の画像のアップロードをサポートしていると報告しています。iOSではできないより一般的なファイルのアップロードを探していたので、別の答えが必要でした。

ここにあるModernizrの第57号では、この問題について説明しています。現在、Windows 8とタッチとマウスの両方を使用しているため、注意が必要です。私がうまく使ったchriskeebleによるコードが真ん中にあります。これは、Modernizrとエージェントの検出に依存しています。

于 2014-03-22T17:31:49.377 に答える
0

Modernizrは、 Windows-Safari v5.1.7のドラッグアンドドロップに対して誤検知を返します(最新-そして現在、最終バージョンになる予定です!)。以前のバージョン(v5.0.x)には機能的なドラッグアンドドロップインフラストラクチャ(Modernizrが検出)があったため、これは驚くべきことではありません。Modernizrは、イベントの失火バグを簡単に発見することはできません(これは、正しい検出スキームにURLデータベースクエリを組み込む必要がある可能性があることを示唆しています)。

注:Safari v5.1.7はオンドロップイベントを発生させません(代わりに、誤ったオンドラッグリーブイベントを発生させない傾向があります。これにより、このバグを回避するためのコードで利用可能な作業がほぼ確実に損なわれます。jqueryを使用して1つのブラウザーの1つのバージョンを修正する場合、それなしでjavascriptを放棄することもできます。

私は(すべての希望に反して)Modernizrの検出いくつかの巧妙な救済策を可能にすることを望んでいましたが、Windows Safari(blunder、imho)からのアップルプルサポートにより、現在のインフラストラクチャが開発者に欠陥製品のサポートを強いる理由を疑問に思います。適切な救済策はバージョンの完全なリコールであり、開発者の責任は、既知の欠陥のあるバージョンのブラウザを使用している場合、それがすべてのブラウザであっても、ユーザーに警告することです(注:すべてのブラウザのすべてのバージョンが証明する必要があります)欠陥がある、より良い仕様を要求する)。

于 2015-07-25T07:41:03.667 に答える