【问题标题】:How Can GetElement From This Code如何从此代码中获取元素
【发布时间】:2016-01-19 17:05:02
【问题描述】:

我正在使用 Basic4Android,我想从这段代码中获取元素。 这是我的网站代码:

<li class='ff-item-type-1'>
    <img src='/templates/smartphone/images/sima/95x95xdo-min.jpg.pagespeed.ic.Qay8bs1PQM.webp' alt='Two Channel' title='Pla Tow Channel' width='95px' height='95px' class='mCS_img_loaded'><span>Tow Chanell</span>
    <a class='chanelllist' href='#tv2' title='Pla Tow Channel' onclick='playme('tv2')'>Show</a>
</li>

我想点击应用程序上的按钮进入(Pla Tow Channel)。

我写了这段代码:

WebViewExtras1.executeJavascript(WebView1,"document.getElementByclass('ff-item-type-1').click('playme('tv2')');")

但它不起作用,我在日志中收到此错误:

Uncaught SyntaxError: Unexpected identifier in null (Line: 1)

【问题讨论】:

  • 这和 PHP 有什么关系?
  • 对不起,请帮帮我。
  • 我对basic4android一无所知,但你可能需要逃避你内心的'。将其更改为:click('playme('tv2')')click('playme(\'tv2\')')
  • 谢谢,但它不起作用。

标签: javascript android getelementbyid basic4android


【解决方案1】:

您可以使用evaluteJavascript()将JS代码从Java端注入到WebView中的JS端。

mWebView.evaluateJavascript("JS codes");

但是这种方法是在 Kit Kat (4.4.) 中引入的。在 Kit Kat 之前,您应该使用以下代码:

mWebView.loadUrl("javascript:JS codes");

所以,你应该有这样的东西:

String jsCodes = "";

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT){
    mWebView.evaluateJavascript(jsCodes);
} else {
    mWebView.loadUrl("javascript:" + jsCodes);
}

你应该传递的 JavaScript 代码是这样的:

document.getElementById('id_of_the_link').click();

注意:您需要为感兴趣的a 元素分配一个ID。如果你不能这样做,或者你可以使用querySelector()方法。

document.querySelector('.ff-item-type-1 a').click();

【讨论】:

    猜你喜欢
    • 2015-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多