简体   繁体   English

如何使用JavaScript通过他的href获取HTML元素?

[英]How to get an HTML element by his href using javascript?

I'm building an webview application which has unwanted html sections/blocks/buttons for my android app. 我正在构建一个webview应用程序,该应用程序具有我的android应用程序不需要的html部分/块/按钮。

I want to remove them by overriding onPageFinished(). 我想通过覆盖onPageFinished()删除它们。 I've succeeded doing it for some elements. 我已经为某些元素成功做到了。

On the webpage i have this element: 在网页上,我有这个元素:

<footer>
    ...
    <a href="http://www.randomlink.com" style=""></a>
    ...
  </footer>

My java code: 我的Java代码:

public void onPageFinished(WebView view, String url) {        
        view.loadUrl("javascript:document.getElementsByTagName('a')[98].style.display=\"none\";");
   }

It does work with 98... but I don't want magic numbers, i want to be able to catch it by his href so it works in any page. 它可以与98兼容...但是我不希望有幻数,我希望能够被他的href捕获,因此它可以在任何页面中使用。

[edit] Forgot to say that I'm working with a 3rd party webpage - leaving me no choice but to block unwanted implementations on my webview application. [edit]忘记说我正在使用第三方网站-别无选择,只能阻止我的webview应用程序上不需要的实现。

Any help is appreciated. 任何帮助表示赞赏。 Cheers. 干杯。

You can get it by it's attribute. 您可以通过属性获取它。

var aTags = document.getElementsByTagName("a");
var wantedElement = null;

for(var i = 0; i < aTags.length; i++)
{
    if(aTags[i].getAttribute("href") == "www.example.com")
    {
        wantedElement = aTags[i];
        //break out of loop
    };
}

With jQuery: 使用jQuery:

var element = $('a[href$="Your href"]');

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM