如何获得juqery某一元素的html内容(包括自身标签)

如何获得juqery某一元素的html内容(包括自身标签),第1张

定义这样一个jq扩展

jQueryfnouterHTML = function(s) {

return (s) thisbefore(s)remove() : $("<Hill_man>")append(thiseq(0)clone())html();

}

然后

$("year")outerHTML

这样就可以了

相关代码:

var editable = documentgetElementById('editable');

addEvent(editable, 'blur', function () {

// lame that we're hooking the blur event

localStoragesetItem('contenteditable', thisinnerHTML);

documentdesignMode = 'off';

});

addEvent(editable, 'focus', function () {

documentdesignMode = 'on';

});

if (localStoragegetItem('contenteditable')) {

editableinnerHTML = localStoragegetItem('contenteditable');

}

1、首先打开hbuilder软件,新建一个html文件,里面写入一个p标签和一个按钮标签。

2、然后在p标签的下方设置一个script标签,里面写入js胆码;先获取p标签和按钮的dom对象,然后给按钮添加一个点击事件,再点击事件爱的回调中alertp标签的text属性即可。

3、最后打开浏览器,可以看到一段文字和一个按钮,点击这个按钮。

4、就可以d出内容了。

documentgetElementById("mybox")

documentgetElementsByName("mybox")注意s

documentgetElementById("mybox")innerHTML='内容'可以更改国服魔兽金币几个字和解释新加进来的代码

只能通过JavaScript来获取, 然后通过JS获取, 然后通过JavaScriptInterface来传递给Java层。

做webview,遇到2种需求,一种是在自己服务器上的HTML中获取数据,另一种是通过自己服务器上的HTML中的超链接跳到另一个站点的HTML中,并获取数据。

于是,总结了2种通过webview获取网页上的数据的方式:

第一种:简单点的,直接通过js调java,在调用方法的过程中将数据通过方法的参数传递给Android端,(前提:服务端有对应的faxun对象,而且调用的方法是showImages(String[] imgUrls))。

class MyJavaScriptInterface {

MyJavaScriptInterface() {

}

/

js调java,显示

@param imgUrls

/

@JavascriptInterface

public void showImages(String[] imgUrls) {

LogUtilsi(TAG, "imgUrls = " + imgUrls[0]);

NewsDetailWebviewActivitythisimgUrls = imgUrls;

}

}

webViewaddJavascriptInterface(new MyJavaScriptInterface(), "faxun");

第二种:有点复杂,通过webview注册一个本地接口后,然后通过java调js,拿到document对象后,解析HTML标签,然后数据会通过本地接口中的回调方法传递给Android端,(前提:HTML页面中的meta标签中有对应的reply_info名称和content属性,数据是封装在content里面的json格式的字符串)。

class MyWebClient extends WebViewClient {

@Override

public void onPageFinished(WebView view, String url) {

viewloadUrl("javascript:windowgetShareDataOnGetShareData("

+ "documentquerySelector('meta[name=\"reply_info\"]')getAttribute('content')" + ");");

superonPageFinished(view, url);

}

}

private class GetShareDataInterface {

@JavascriptInterface

public void OnGetShareData(String shareData) {

if (null != shareData) {

try {

JSONObject shareJson = new JSONObject(shareData);

title = shareJsonoptString("title");

description = shareJsonoptString("description");

imageUrl = shareJsonoptString("imageUrl");

} catch (JSONException e) {

eprintStackTrace();

}

}

}

}

webViewsetWebViewClient(new MyWebClient());

其实,如果是普通的需求,两种方式都可以解决问题,但是如果是有些HTML没有做js调java,只是个普通的HTML,并且需要获取页面上的数据时,只能通过第二种方式来获取HTML上的数据了,比如获取HTML上的title等等。

js获取html元素的方式

+通过ID获取:getElementById('id属性值')

+通过标签名:getElementsByTagName('标签名')

+通过类名:getElementsByClassName('类名')

+通过name属性:getElementsByName('name属性值')

+通过选择器获取一个元素:querySelector

+通过选择器获取一组元素:querySelectorAll

1获取id值为d1的html元素

将获取到的html元素称为DOM节点对象,必须传参数,参数是string类型,是获取元素的id。返回值只获取到一个元素,没有找到返回null。

2通过标签名:getElementsByTagName('标签名')

参数是是获取元素的标签名属性,不区分大小写,根据标签名获取html元素, 返回的是一个数组(伪数组) 

通过类名:getElementsByClassName('类名')

参数是元素的类名,返回值是一个类数组,没有找到返回空数组。

通过类名:getElementsByClassName('类名')

必须传参数,参数是是获取元素的name属性,返回值是一个类数组,没有找到返回空数组。

通过选择器获取一个元素:querySelector

参数是选择器,返回值只获取到第一个元素。

通过选择器获取一组元素:querySelectorAll

参数是选择器,返回值是一个数组。

以上就是关于如何获得juqery某一元素的html内容(包括自身标签)全部的内容,包括:如何获得juqery某一元素的html内容(包括自身标签)、js怎么取选中的所有元素的html内容、怎么用JS获取HTML标签内的内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9621558.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存