Trigger click event on link tag in JS for Android and iPhone

痴心易碎 提交于 2019-12-18 13:33:24

问题


I am developing mobile web application using Sencha Touch (JavaScript & ExtJS). I have a link tag (just <a> tag with href), and I need to trigger click event on it.
I have found that call of myelement.dom.click(); do the job, but it's not working for Android... Is there some kind of universal solution?

UPDATE

I have a container with html code:

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

I need to simulate click on this link using only plain JavaScript and ExtJS. The link must be opened in new window/tab.


回答1:


Use the HTMLEvents object with document.createEvent() to simulate a click on a link.

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

event.initEvent( 'click', true, true );
link.dispatchEvent( event );



回答2:


//android

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);

      }


来源:https://stackoverflow.com/questions/14587917/trigger-click-event-on-link-tag-in-js-for-android-and-iphone

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!