Προς το περιεχόμενο

Android client για Wordpress site


Προτεινόμενες αναρτήσεις

Δημοσ.

https://stackoverflow.com/questions/16709963/programmatic-click-in-android-webview

webView.loadUrl("javascript:(function(){"+
    "l=document.getElementById('mA');"+
    "e=document.createEvent('HTMLEvents');"+
    "e.initEvent('click',true,true);"+
    "l.dispatchEvent(e);"+
    "})()");

 

Και κάτι που μου διέφυγε: Enable javacsript for that webview.

 

WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);

 

Δημοσ.
8 ώρες πριν, ajaxmonkey4hire είπε

https://stackoverflow.com/questions/16709963/programmatic-click-in-android-webview


webView.loadUrl("javascript:(function(){"+
    "l=document.getElementById('mA');"+
    "e=document.createEvent('HTMLEvents');"+
    "e.initEvent('click',true,true);"+
    "l.dispatchEvent(e);"+
    "})()");

Και κάτι που μου διέφυγε: Enable javacsript for that webview.


WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);

Το έχω δοκιμάσει χωρίς αποτέλεσμα. Απλά μένει στο login screen χωρίς να γίνεται τίποτα..

Δημοσ. (επεξεργασμένο)
public void onClick(View view) {
  setContentView(webview);
  webview.getSettings().setJavaScriptEnabled(true);
  webview.loadUrl("https://example.com/profile/login/");

  webview.setWebViewClient(new WebViewClient() {
    public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
      Toast.makeText(activity, "Oh no! " + description, Toast.LENGTH_SHORT).show();
    }

    @Override
      public void onPageFinished(WebView view, String url) {
      super.onPageFinished(view, url);
      view.loadUrl("javascript:(function(){" +
                   "l = document.getElementsByClassName('userpro-right')[0];" +
                   "k = l.getElementsByTagName('a')[0];" +
                   "k.click();" +
                   "}" +
                   ")");

    }
  });


}

 

Επεξ/σία από kaliakman
Δημοσ.
16 λεπτά πριν, ajaxmonkey4hire είπε

το event handler για το click που το δένεις στο HTML και με ποιον τρόπο; (JQuery???)

Όλο αυτό είναι κώδικας του plugin(UserPro).

Δημοσ.

Το λινκ που δείχνει στο https://prnt.sc/ijj9ro έχει href="#" άρα το default click event δεν κάνει τίποτα. Αναγκαστικά λοιπόν η σελίδα προσθέτει κάπου ένα on click event handler. Για να το κάνεις να λειτουργήσει στο webview πρέπει να ξέρεις που και πως γίνετε αυτό (Vanila Javascript? Jquery? Angular?) και να εξασφαλίσεις ότι ο κωδικός που το κάνει αυτό εκτελείτε στο webview. 

Δημοσ.
6 λεπτά πριν, ajaxmonkey4hire είπε

Το λινκ που δείχνει στο https://prnt.sc/ijj9ro έχει href="#" άρα το default click event δεν κάνει τίποτα. Αναγκαστικά λοιπόν η σελίδα προσθέτει κάπου ένα on click event handler. Για να το κάνεις να λειτουργήσει στο webview πρέπει να ξέρεις που και πως γίνετε αυτό (Vanila Javascript? Jquery? Angular?) και να εξασφαλίσεις ότι ο κωδικός που το κάνει αυτό εκτελείτε στο webview. 

Αν τρέξω την ίδια ακολουθία εντολών όπως στον κώδικα στην κονσόλα σε browser έχω την επιθυμητή ενέργεια.
Θα ψάξω στα αρχεία του plugin να δω που γίνεται το binding.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...