Wie Sie die XPATH eines Elements auf HTML-Seite, in CrossWalkView (WebView) von onTouch Ereignis geöffnet?So erhalten Sie xPath von der HTML-Seite (WebView)
0
A
Antwort
0
Setzen Sie WebViewClient auf Ihrer Webview-Komponente.
browser = (WebView) findViewById(R.id.browser);
browser.setWebViewClient(new InnerWebViewClient());
und erstreckt sich dann WebViewClient Klasse
private class InnerWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return super.shouldOverrideUrlLoading(view, url);
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
}
}
Hier finden Sie url als im String-Format bekommen. onTouch-Ereignis von Webivew führt zuerst onPageStarted() -Methode aus. So wirst du deinen Pfad-URL dort bekommen.
0
Das Problem wurde mit JS gelöst. JS Lösung Ich habe hier: I'm storing click coordinates in my db and then reloading them later and showing them on the site where the click happened, how do I make sure it loads in the same place?
InputStream is = getResources().openRawResource(R.raw.get_xpath);
Scanner s = new Scanner(is).useDelimiter("\\A");
String javascript = s.hasNext() ? s.next() : "";
myWebView.evaluateJavascript(javascript, null);
und Hier `s meine JS-Code:
document.onclick= function(event) {
if (event===undefined) event= window.event; // IE hack
var target= 'target' in event? event.target : event.srcElement; // another IE hack
var root= document.compatMode==='CSS1Compat'? document.documentElement : document.body;
var mxy= [event.clientX+root.scrollLeft, event.clientY+root.scrollTop];
var path= getPathTo(target);
var txy= getPageXY(target);
alert('Clicked element '+path+' offset '+(mxy[0]-txy[0])+', '+(mxy[1]-txy[1]));
}
function getPathTo(element) {
if (element.id!=='')
return 'id("'+element.id+'")';
if (element===document.body)
return element.tagName;
var ix= 0;
var siblings= element.parentNode.childNodes;
for (var i= 0; i<siblings.length; i++) {
var sibling= siblings[i];
if (sibling===element)
return getPathTo(element.parentNode)+'/'+element.tagName+'['+(ix+1)+']';
if (sibling.nodeType===1 && sibling.tagName===element.tagName)
ix++;
}
}
function getPageXY(element) {
var x= 0, y= 0;
while (element) {
x+= element.offsetLeft;
y+= element.offsetTop;
element= element.offsetParent;
}
return [x, y];
}
Verwandte Themen
- 1. So erhalten Sie Tabellendaten aus Tabellen mithilfe von Xpath
- 2. So erhalten Sie die letzte Bildlaufposition a von WebView
- 3. Erhalten Sie alle Daten, die von XPath
- 4. Scrapy - So erhalten Sie XPATH-Knoten als Text
- 5. So erhalten Sie ausgewählten Text in WebView Android
- 6. So erhalten Sie Daten von URL
- 7. So erhalten Sie eine Website-Warnmeldung UWP WebView
- 8. So erhalten Sie den Fortschritt von WebView beim Laden der Daten, Xamarin.Forms
- 9. XPath erhalten Element von Index
- 10. Erhalten von WebView-Verlauf von WebBackForwardList
- 11. So geben Sie mehrere Namespaces von Salesforce in Xpath
- 12. Android, Webview, erhalten Formulardaten
- 13. Wie td Textwert der verschachtelten Tabelle von XPath erhalten
- 14. Erhalten Sie Image-Link von div mit xPath
- 15. So erhalten Sie die Klick-URL der nativen benutzerdefinierten Vorlagenanzeige
- 16. So erkennen Sie eine Wischgeste auf webview
- 17. So erhalten Sie Javascript dynamischen Inhalt von der Website
- 18. So testen Sie den Wert in der Eingabe mit XPath
- 19. Nummer über XPath erhalten?
- 20. POST-Daten von Android Webview erhalten
- 21. So erhalten Sie innere HTML-Quelle von WebView in Xamarin Formular - C#
- 22. XPath Mit Kind-Elemente erhalten
- 23. Wie erhalten Sie den Wert von Onclick mit Xpath?
- 24. Erhalten Sie Attributwerte von übereinstimmenden XML-Knoten mit XPath-Abfrage
- 25. So finden Sie Xpath in Selen webdriver
- 26. So erhalten Sie den Rückruf des Eingabebereichs Klicken Sie auf ein WebView in Android
- 27. Unable Knotenwert von XML erhalten XPath
- 28. So verwenden Sie WebView auf xcode 4.5.1
- 29. So erhalten Sie die Kategorien der Datensätze
- 30. So behandeln Sie die Standardauthentifizierung in WebView