
首先我们来看一下官方的实际例子,不过该代码整体封装比较强,可能对于初学者来说有点难度,具体代码如下:
'use strict'
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View,
Image,
TouchableOpacity,
ScrollView,
} from 'react-native'
var NUM_ITEMS = 20;
var PerfectProject = ReactcreateClass({
Statics: {
titles: '<ScrollView>',
description: 'Component that enable scrolling through child component',
},
makeItems: function(nItems: number, styles) : Array<any> {
var items = [];
for (var i=0;i<nItems;i++){
items[i] = (
<TouchableOpacity key={i} style={styles}>
<Text style={{fontSize:20 }}>{'Item text' + i}</Text>
</TouchableOpacity>
);
}
return items;
},
render: function(){
var items = thismakeItems(NUM_ITEMS,stylesitemWrapper);
items[4] = (
<ScrollView key={'ScrollView'} horizontal={true}>
{thismakeItems(NUM_ITEMS,[stylesitemWrapper,styleshorizontalItemWrapper])}
</ScrollView>
);
var verticalScrollView=(
<ScrollView style={stylesverticalScrollView}>
{items}
</ScrollView>
);
return verticalScrollView;
},
});
var styles = StyleSheetcreate({
itemWrapper: {
backgroundColor: '#dddddd',
alignItems: 'center',
borderWidth: 5,
borderColor: 'red',
borderRadius: 5,
padding: 30,
margin: 5,
},
horizontalItemWrapper: {
padding: 50,
},
verticalScrollView:{
backgroundColor: 'aquamarine',
margin: 10,
},
});
要使用jQuery获取视图的高度可以使用height()方法,这个方法可以获取元素的高度,包括padding、border和margin。
例如,如果你想获取id为example的元素的高度,你可以这样做:
```var height = $('#example')height();
```这将在变量height中返回元素的高度值。你也可以传递一个参数给height()方法,如下所示:
``var height = $('#example')height('200px');
```这将把元素的高度设置为200像素,并将高度值存储在变量height中。
需要一个DIV根据里面的元素自动适应高度,所以,肯定无法给这个DIV定义一个实际高度。而随便嵌套一个DIV却发现并不适应高度。这事就郁闷了。下面给出一些方法。大致的例子是: <div id="main">
<div id="content"></div>
</div>当Content内容多时,即使main设置了高度100%或auto。在不同浏览器下还是不能完好的自动伸展。内容的高度比较高了,但容器main的高度还是不能撑开。我们可以通过三种方法来解决这个问题。
增加一个清除浮动,让父容器知道高度。请注意,清除浮动的容器中有一个空格。
<div id="main">
<div id="content"></div>
<div style="font: 0px/0px sans-serif;clear: both;display: block"> </div>
</div> 增加一个容器,在代码中存在,但在视觉中不可见。
<div id="main">
<div id="content"></div>
<div style="height:1px; margin-top:-1px;clear: both;overflow:hidden;"></div>
</div> 增加一个BR并设置样式为clear:both。
<div id="main">
<div id="content"></div>
<br style="clear:both;" />
</div>以上三个方法都不是最好的解决方法,因为在程序代码观念中是提倡尽量不要添加无意义的标签代码。现在,你可以用下面的方法来实现DIV自适应高度效果#main {height:100%;
height()
-获取匹配元素集合中的第一个元素的当前计算高度值 或 设置每一个匹配元素的高度值。
-css('height') 和 height()之间的区别是后者返回一个没有单位的数值,前者是返回带有完整单位的字符串。当一个元素的高度需要数学计算的时候推荐使用height() 方法 。
-这个方法同样能计算出window和document的高度。
$(window)height(); // returns height of browser viewport
$(document)height(); // returns height of HTML document
注意:在绝对定位和给定display:block时,虽然style和script标签用width() 或 height()也将报告一个值,强烈建议不要在这些标签中调用这些方法。这是一种不好的做法,结果也证明是不可靠的。
innerHeight()
-为匹配的元素集合中获取第一个元素的当前计算高度值,包括padding,但是不包括border。
-这个方法返回元素的高度,包括顶部和底部的padding,单位是像素。
-这个方法不适用于window and document对象,可以使用height()代替。
outerHeight()
-获取元素集合中第一个元素的当前计算高度值,包括padding,border和选择性的margin。返回一个整数(不包含“px”)表示的值 ,或如果在一个空集合上调用该方法,则会返回 null。
-outerHeight( [includeMargin ] ):include是一个布尔值,表明是否在计算时包含元素的margin值。
-这个方法不适用于window 和 document对象,可以使用height()代替。
以上就是关于react native 怎么获取某个元素的高全部的内容,包括:react native 怎么获取某个元素的高、jquery获取某个视图的高度、手机浏览器获取自适应 div 的显示高度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)