Mootools 1.2教程(6)——操纵HTML DOM元素(4)
作者:Fdream 来源:Fdream博客 发布时间:2008-11-20 13:19:00
示例
为了这个例子,我们来创建一个表单,可以让你添加一个行元素到你的HTML页面。首先,建立一些文本框和按钮。
参考代码:
<div id="body_wrap">
ID: <input id="id_input" name="id" />
text: <input id="text_input" name="text" />
<button id="new_div">创建一个新的div</button>
</div>
现在,我们来用MooTools写JavaScript来实现让这个HTML表单可以插入一个新的元素到你的页面中。首先,我们先给这个按钮添加一个事件,并写一个函数来包含我们的代码:
参考代码:
var newDiv = function() {
// 我们将把“添加一个新元素”的代码放在这里
};
window.addEvent('domready', function() {
$('new_div').addEvent('click', newDiv);
});
下一件事我们要做的就是指定我们要处理的变量。要使用输入表单中的数据,我们需要使用.get();方法:
参考代码:
var idValue = $('id_input').get('value');
var textValue = $('text_input').get('value');
现在,上面代码中的变量idValue和textValue就包含了它们指定的输入表单的值。由于我们需要在用户点击“创建一个新的div”按钮时获得输入框的值,我们需要把上面的代码放在newDiv();这个函数中。如果我们需要在这个函数外面获得这个值,我们需要在页面加载时获得,而不是点击时。
参考代码:
var newDiv = function() {
var idValue = $('id_input').get('value');
var textValue = $('text_input').get('value');
};
window.addEvent('domready', function() {
$('new_div').addEvent('click', newDiv);
});
接下里,我们需要获得我们新元素要插入到的元素:
参考代码:
var newDiv = function() {
var idValue = $('id_input').get('value');
var textValue = $('text_input').get('value');
var bodyWrapVar = $('newElementContainer');
};
window.addEvent('domready', function() {
$('new_div').addEvent('click', newDiv);
});
我们已经有了我们的输入表单的值了,现在我们可以创建一个新元素了:
参考代码:
var newDiv = function() {
var idValue = $('id_input').get('value');
var textValue = $('text_input').get('value');
var bodyWrapVar = $('newElementContainer');
var newElementVar = new Element('div', {
// 这将设置这个元素的id为idValue的值
'id': idValue,
// 这将设置这个元素的文本为textValue的值
'html': textValue
});
};
window.addEvent('domready', function() {
$('new_div').addEvent('click', newDiv);
});
剩下我们要做的就是把这个新元素插入到我们的页面中了:参考代码:
var newDiv = function() {
var bodyWrapVar = $('newElementContainer');
var idValue = $('id_input').get('value');
var textValue = $('text_input').get('value');
var newElementVar = new Element('div', {
'id': idValue,
'text': textValue
});
// 下面这句是说:“把newElementVar插入到bodyWrapVar的内部顶部”
newElementVar.inject(bodyWrapVar, 'top');
};
var removeDiv = function() {
// 这将删除内部的html值(就是div标记类的所有东西)
$('newElementContainer').erase('html');
}
window.addEvent('domready', function() {
$('new_div').addEvent('click', newDiv);
$('remove_div').addEvent('click', removeDiv);
});
更多学习...
一定要花一些时间看一些MooTools文档中的Elements这一节:
Element这一节包含了我们这里讲到的大多数内容,还有很多其它内容
Element.style可以给你在元素样式属性上更多的控制权(有些东西我们将在以后的教程中深入讲解)
Element.dimentions包含了处理位置、坐标、尺寸大小等东西的工具
猜你喜欢
- 1、最郁闷的发现!!先看代码:<style>#a #b #c span{color:red;}#b #c span{color:
- (1)应用于客户需要与不同的数据源进行交互时。数据可能来自不同的数据库,他们都有各自不同的复杂格式。但客户与这些数据库间只通过一种标准语言进
- 工作中,网页设计师经常会遇见这些状况:时间这么短又要出彩、又是要大气要有气氛、风格不明确很难把握、栏目这么多页面又这么长……突然觉得束手无策
- 看了不少朋友的个人网站,有一个小问题,似乎很多朋友都忽略了,那就是版权声明的写法。虽然那只是一小行字,不过作为设计师也好,作为个人的爱好也好
- 相同记录行如何取最大值我想这个东西在作一些相关采购系统或成本报价系统应该很有用的吧取当前的最有效的价格.记录下来与大家分享!--测试数据&n
- IE历来被web标准的拥护者所诟病,而当FireFox横空出世以后,更多的网页制作者开始关注web标准设计。看着FireFox的市场占有率不
- isnull()Null 值指出变量不包含有效数据。Null 与 Empty 不同,后者指出变量未经初始化。Null 与零长度字符串 (&q
- 问:把数据从MySQL迁移到Oracle需要注意些什么?答:以下是MySQL迁到Oracle需要掌握的注意事项,希望对你有所帮助。1.自动增
- <%@LANGUAGE="xxx" CODEPAGE="936"%>一般又分为<%
- 核心导出作业的 代码 和 作业备份是相似的 代码如下:alter PROC DumpJob (@job VARCHAR(100)
- asp使用WScript.Shell获取电脑的网络配置信息Option Explicit Dim WSHShe
- asp创建pdf文件代码,详见以下代码:<%Option ExplicitSub CheckXlDriver()&
- 一、 在数据库排序查询优化上的差异。在讲解这个内容之前,为了读者能够清楚我讲的内容,我要先谈一个概念。命中率,它是指从内存中取得数据而不从磁
- 从MySQL 5.0.2开始,通过mysql_stmt_attr_set() C API函数实现了服务器端光标。服务器端光标允许在服务器端生
- 背景 background css 说明 background-image:url(&q
- 这几年来,我们这个行业一直都在谈用户体验,以用户为中心的设计。“用户体验”是指用户访问网站的界面、功能、相关信息的可读性、操作的方便性,交互
- SQL Server TEXT、NTEXT字段拆分的问题引用的内容:SET NOCOUNT ON CREATE 
- 论证完使用target=_blank并非绝对错误之后,分场景探讨如何减少新开窗口。自有意识注意这个问题,是看到蓝色经典Plod大叔在04年提
- show tables或show tables from database_name;解释:显示当前数据库中所有表的名称show datab
- js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,