6

Sencha Touch(JavaScript&ExtJS)を使用してモバイルWebアプリケーションを開発しています。リンクタグ(で<a>タグを付けるだけ)があり、それにイベントhrefをトリガーする必要があります。 私はその仕事をするという呼びかけを見つけました、しかしそれはAndroidのために機能していません...ある種の普遍的な解決策はありますか?click
myelement.dom.click();

アップデート

私はhtmlコードのコンテナを持っています:

<a href="http://google.com" id="link_to_click" target="_blank">CLICK ME</a>

プレーンなJavaScriptExtJSのみを使用して、このリンクのクリックをシミュレートする必要があります。リンクは新しいウィンドウ/タブで開く必要があります。

4

2 に答える 2

9

HTMLEventsオブジェクトを使用しdocument.createEvent()て、リンクのクリックをシミュレートします。

var link = document.getElementById( 'link_to_click' ),
    event = document.createEvent( 'HTMLEvents' );

event.initEvent( 'click', true, true );
link.dispatchEvent( event );
于 2013-02-03T03:52:05.903 に答える
0

//アンドロイド

WebView wv = (WebView) findViewById(R.id.webview);
wv.getSettings().setJavaScriptEnabled(true);

// javascript

function bindIcons() {

            jQuery("a.icons").bind('mouseover mouseout mousedown mouseup focus blur touchstart touchend', function (e){
              if (typeof console !== "undefined" ) console.log(e);
              if (e.type=='mouseover' || e.type=='focus') 
              {
                jQuery(e.currentTarget).toggleClass('over',true);
              }

              if (e.type=='mousedown' || e.type=='touchstart') 
              {
                jQuery(e.currentTarget).toggleClass('down',true);
              }

              if (e.type=='mouseout' || e.type=='mouseup' || e.type=='touchend' || e.type=='blur') 
              {
                jQuery(e.currentTarget).toggleClass('down',false);
                jQuery(e.currentTarget).toggleClass('over',false);
              }
            });

            if (isAndroid())
               jQuery("a.ifandroid").attr("href","javascript:ifAndroid();");
            else
               jQuery("a.ifandroid").toggleClass('ifandroid',false);

      }
于 2013-01-29T18:23:58.220 に答える