10

これは本当にばかげた質問のように思えるかもしれませんが、私はアプリケーションを作成していて、マウスオーバー、マウスクリック、マウスホバーに異なるイベントをバインドする必要がある場所に出くわしました。現在、Internet Explorer、Firefox、およびSafariで使用されています。それはすべて期待どおりに機能します。

ただし、私のiPhoneでは、アクションはトリガーされません。今私の質問は、私が指を押したままイベントをトリガーしたときに、マウスオーバーを基本的に起動させることができる特定の方法ですか?

これが機能しない例は、このWebサイトで、コメントにカーソルを合わせると+1またはフラグアイコンが表示されるはずです。

私はjQueryを使用しています。

4

7 に答える 7

29

答えは、Remusが投稿したドキュメントにあります。onclick = "void(0)"宣言を追加すると、要素がクリック可能であることをMobile Safariに指示し、その要素のマウスオーバーイベントにアクセスできるようになります。

詳細はこちら

于 2010-07-09T21:09:41.640 に答える
15

私はあなたがiPhone(そしてそれに関してはどんな携帯電話)のためにあなたのデザインを再考する必要があると思います。iPhoneのWebインターフェイスは、インターフェイスを大幅に複雑にするだけなので、マウスオーバーやホバーに依存するべきではありません。

より多くのオプションを表示するためだけに小さな小さな矢印をクリックする必要がない、モバイル表示用に最適化された新しいインターフェイスを設計することを強くお勧めします。

于 2009-11-30T23:55:44.773 に答える
5

モバイルSafariにはマウスイベントとホバーイベントがありません(少なくとも通常受け入れられている意味ではありません)。これらは、互換性のあるWebコンテンツの作成で明示的に呼び出されます。サポートされていないiPhoneOSテクノロジー:

マウスオーバーイベントユーザーは、iPhoneOSでクリックできない要素を「マウスオーバー」することはできません。「<ahref="https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html#//で説明されているように、マウスオーバーイベントが発生するには、要素をクリック可能である必要があります。 apple_ref / doc / uid / TP40006511-SW7 "rel ="nofollownoreferrer">ワンフィンガーイベント。"</p>

ホバースタイルマウスオーバーイベントはマウスダウンイベントの前にのみ送信されるため、ホバースタイルは、ユーザーがホバースタイルでクリック可能な要素を押したままにした場合にのみ表示されます。「<ahref="https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html#//apple_ref/doc/uid/TP40006511-SW1" rel="」を読んでください。 iPhoneOSのジェスチャによって生成されたすべてのイベントのnofollownoreferrer">イベントの処理"。

于 2009-11-30T23:58:30.510 に答える
2

ええ...質問を投げかける人は、実際にデバイスがホバーやマウスオーバーを「感知」することを期待していなかったと思います。実際、誰かが実際にそれを意味していると仮定するには、かなり傲慢でなければなりません。これらのイベントハンドラーをトリガーするいくつかの方法が望まれます。アイテムの上に表示される「ヒント」のテキストで、それらの使用法をはっきりと見ることができます。

そして、マウスイベントを使用しないと、よりクリーンでシンプルなエクスペリエンスになると言った人は誰でも、自分の意見を少し真剣に受け止めています。これらは、Webページ/アプリケーションのエクスペリエンスを大幅に向上させたり、悪化させたりする可能性があります。それは慎重な使用法の問題です。

ここで提供される価値のある唯一の答えは、モバイル向けに最適化された代替サイトを用意するのが最善だと言った人です。または、ブラウザの種類に基づいてページを生成するコンテンツ管理システムを使用することもできます(ウィキペディアの動作と同様)。

于 2010-05-05T03:55:37.503 に答える
1

タッチスクリーンUIデザインについて最初に発見したことをおめでとうございます。悪いニュースは、あなたが望むことは起こらないということです。

幸いなことに、これにより、iPhoneユーザーと通常のWebユーザーの両方にとって、はるかに簡単なインターフェイスを作成する必要があります。

于 2009-11-30T23:58:48.900 に答える
0

仮想ポインターを移動できない限り(タッチUIはそのような機能を提供しませんが)、タッチスクリーンデバイスでマウスオーバーまたはホバー機能を使用することはできませんが、タッチスクリーンUIのポイントは無効になります。

タッチスクリーンUIはパラダイムシフトであり、マウスポインターUIインターフェイスをタッチUIデザインに組み込むことで、ソリューションを制限し、損害を与えるだけです。

于 2009-11-30T23:58:59.667 に答える
-1

多くのエッジケースを間違えるのは簡単だと想像できますが、javascriptでマウスハンドラーを書くのはかなり簡単に思えます。

幸いなことに、誰かがjavascriptのマウスハンドラー/エミュレーターをブックマークレットとして作成しました。これはiCursorと呼ばれます(同じ名前の無意味なMacアプリと混同しないでください)。

悪いニュースは、その男のサイト(icursor.mobi)が放送を停止し、コピーが見つからないため、それがどれほどうまく機能しているかを伝えることができないということです。 これがレビューです(私は1つのリンクしか投稿できないため):

AppleがiPhone/iPadに対して行うべきことは、1本の指でパンして仮想マウスポインタを動かし、2本の指でパンしてビューポート内で動かすことでした(1本の指で行うように)。

2本指のパンは簡単です。Appleがこれを行わなかったと私が想像できる唯一の理由は、彼らが実際に世界のWebサイトの50%を壊したかったということです。真剣に。マイクロソフトがここ数年行ってきた基準を破るという邪悪な操作の試みがすぐそこにあります。

あなたはWeb開発者です。何が一番嫌いですか?インターネットエクスプローラ。すべての余分な頭痛のためにそれはあなたを引き起こします。さて、スティービーは彼の「私も」瞬間を持たなければなりませんでした、そしてあなたはそれの代金を払うつもりです。

于 2010-11-16T17:10:57.760 に答える