用CSS样式表控制Panel的位置


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Panel</title>
<link type="text/css" rel="stylesheet" href="../../ext/resources/css/ext-all.css">

<style type="text/css">
.contain{
/* 设置背景 */
background:#000;
/* 居中设置 */
margin:0 auto;
width:500px;
height:500px;
/* 外层div相对定位 */
position:relative;
}

.center{
/* 居中设置 */
margin:0 auto;
/* 内层div相对外层div绝对居中 */
position:absolute;
/* 指定内层div的位置 */
top:150px;
left:150px;
}
</style>

<script type="text/javascript" src="../../ext/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="../../ext/ext-all.js"></script>

<script type="text/javascript">
Ext.onReady(function() {
var _panel = new Ext.Panel({
frame:true,
width:200,
height:200,
title:"面板"
});
_panel.addButton({text: "确 定"});
_panel.addButton(new Ext.Button({
text:"new Button",
minWidth:100
}));

/* 动态创建元素 DomHelper.append */
_panel.applyToMarkup(Ext.DomHelper.append(Ext.getBody(),{
tag:"div",
cls:"contain",
cn:[{
tag:"div",
cls:"center"
}]
}, true).child("div"));
});
</script>
</head>
<body>

</body>
</html>







这里在向页面中添加元素的时候用到了applyToMarkup()方法,该方法类似render(),简单的解释一下:



如果在构造参数中定义:

* renderTo:将当前对象放到renderTo指定的元素里面
* applyTo:直接在当前对象之上构建

在构造方法外部定义:

* render:等同于renderTo()
* applyToMarkup:等同于applyTo()

DomHelper.append是Ext中动态创建Dom对象的方式,也是经常用到的一个方法,来看API中的定义



DomHelper.append ( Mixed el , Object/String o , [Boolean returnElement ] ) : HTMLElement/Ext.Element



该方法创建了一个新的DOM元素,并且把它添加到第一个参数指定的DOM对象之中。


Parameters:

* el : 可以是多种形式的上下文元素
*
o : 对象或字符串类型,指定的DOM 对象或者HTML行级元素
*
returnElement : 可选,Boolean 类型,如果值为true,返回一个Ext对象元素,否则返回普通的HTML元素

Returns:

* HTMLElement/Ext.Element :新的HTML节点

上面例子中第二个参数指定是的DIV对象

{
tag:"div",
cls:"contain",
cn:[{
tag:"div",
cls:"center"
}]
}


* tag:target,目标是DIV
* cls:class,指定CSS 样式
* cn:childNode,子节点
* []:中括号中可以动态生成多个子节点对象
* .child("div"):append到指定对象的子节点中第一个DIV上
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值