向表中追加行
创建表格行时,我们要把创建的 tr 追加到 tbody 元素节点中,而不能直接把它追加到 table 元素节点中,因为IE 上直接追加到 table 时不能显示出来,但所有的现在的浏览都支持把 tr 追加到 tbody中,正确的做法如下:
先定义如下一个空表
<table id="myTable">
<tbody id="myTableBody">
</tbody>
</table>
然后脚本如下实现:
var cell = document.createElement("td").appendChild(document.createTextNode("foo"));
var row = document.createElement("tr").appendChild(cell);
document.getElementById("myTableBody").appendChild(row);
其实我们可以使用HTML DOM来动态地创建表格更简洁,具体请参考《DOM&HTML DOM(二)》中的“使用HTML DOM操作Table”一节。
通过JavaScript设置元素的样式
可以通过javaScript使用元素的setAttribute方法设置元素的样式。
var spanElement = document.getElementById("mySpan");
//以下是标准做法,这种方法在当前其他浏览上都是行得通的,但IE不支持。
spanElement.setAttribute("style","font-weight:bold;color:red;");
//以下是非标准做法,但得到了广泛的支持。这种方法在IE和大多数其他浏览上都能很好地工作,只有Opera除外。
spanElement.style.cssText="font-weight:bold;color:red;";
为了让代码 在所有当前浏览器上都可移值,可以同时使用这两种方法,也就是既使用setAttribute方法,又使用元素的style对象的cssText属性。
设置元素的class属性
var element = document.getElementById("myElement");
//标准。下面的写法保证除IE外,所有浏览器可用
Element.setAttribute("class", "styleClass");
//非标准。下面写法保证IE可用,而忽略class
Element.setAttribute("className", "styleClass");
创建输入元素
创建一个下拉框(select)或文本域(textarea)直接使用一条语句
var select = document.createElement("select");
就可以了。但单行文本框、复选框、单选框、单选钮、按钮稍难一些,因为它们都有同样的元素名 input,只是 type 属性不同,所以要创建这些元素使用document.createElement方法后,不要调用元素的 setAttribute方法来设置type属性的值,并且type属性的设置一定要放在追加元素到文档中之前操作。以下为正确做法:
var button = document.createElement("input");
//单行文本框、复选框、单选框、单选钮、按钮需要此属性区别,并在追加之前设置
button.setAttribute("type", "button");
document.getElementById("formElement").appendChild(button);
向输入元素增加事件处理程序
var formElement = document.getElementById("formElement");
//除IE外,所有当前浏览器中都能工作。
formElement.setAttribute("onclick", "doFoo();");
//所有浏览器可用,设置一个匿名函数 ,并在匿名函数里再调用真真的事件处理函数
formElement.onclick = function () {
doFoo();
};
创建单选按钮
// uniqueID为IE中document对象的专用属性
if (document.uniqueID) {
//只有IE支持
var radioButton = document.createElement(" <input type='radio' name='radioButton' value='checked'>");
} else {
//除IE外,其他标准浏览器都支持
var radioButton = document.createElement("input");
radioButton.setAttribute("type", "radio");
radioButton.setAttribute("name", "radioButton");
radioButton.setAttribute("value", "checked");
}
分享到:
相关推荐
核心在于使用JavaScript与服务器进行异步数据交换,并且利用浏览器内置的对象——XmlHttpRequest(XHR)来实现这一过程。在本笔记中,我们将深入探讨XmlHttpRequest在Ajax中的应用实例,以及如何结合jQuery库进行更...
这些只是JavaScript学习笔记的一部分,深入理解并熟练运用这些概念,将为JavaScript编程打下坚实的基础。随着学习的深入,还会接触到更多高级特性和框架,如闭包、原型链、AJAX、jQuery、Vue.js、React.js等,这些都...
JavaScript的10种跨域共享方法 JavaScript类型总览 JavaScript获取文本框光标的像素位置 js函数match、exec、test、search、replace、split使用介绍 技巧:Javascript使用隐藏的new来创建对象 禁止页面全选复制,...
该项目基于Vue技术栈实现了一个云笔记应用,名为“vue-evernote-master”,其设计灵感和功能特点借鉴了知名的云笔记服务——印象笔记。Vue.js作为前端框架,提供了强大的组件化开发能力,使得项目的结构清晰,代码...
课件内容丰富,不仅包括了DOM操作、事件处理等基础知识点,还深入到AJAX异步通信、JSON数据格式的应用、浏览器兼容性问题的处理以及ES6新特性的探索。这些内容旨在帮助学习者构建一个完整且现代的JavaScript知识体系...
3. **JavaScript调试**:《如何调试javascript.mht》介绍了调试JavaScript的方法,包括使用浏览器的开发者工具、断点设置、步进执行、错误捕获等,是开发者定位和解决程序问题的重要技能。 4. **需求分析**:虽然...
通过以上介绍,我们了解了JavaScript及其重要组成部分——jQuery的基础概念和技术要点。JavaScript作为一种强大的客户端脚本语言,极大地丰富了网页的交互性和功能性,而jQuery作为JavaScript的一个扩展库,进一步...
"Java相关课程系列笔记之十二jQuery学习笔记"涵盖了JavaScript的一个库——jQuery。jQuery简化了DOM操作、事件处理、动画效果和Ajax交互,是前端开发的常用工具。 "Java相关课程系列笔记之十三Struts2学习笔记"涉及...
3. **跨浏览器兼容性**:内置处理了浏览器之间的差异,开发者无需再担心不同浏览器的兼容问题。 4. **丰富的插件生态**:基于jQuery的核心库,社区贡献了大量的插件和UI组件,可以快速实现复杂功能而无需从头编写...
《DWR笔记整理(三)——深入理解与实践》 Direct Web Remoting(DWR)是一种JavaScript库,它使得在浏览器和服务器之间进行双向通信变得简单。本篇笔记将深入探讨DWR的核心概念、功能以及如何在实际项目中应用。...
Java私人学习笔记主要涵盖了Java编程语言以及与其相关的几个著名框架——Spring、Struts2和Hibernate,还有前端开发中常用的JavaScript。这些技术在IT行业中的应用广泛,是许多企业级应用开发的基础。以下是对这些...
这个压缩包包含的是DWR的实例、相关的jar包以及两个重要的JavaScript文件——`engine.js`和`util.js`,这些都是学习DWR的关键组件。 1. **DWR基础概念**: DWR的核心功能是提供一种方式,使得客户端JavaScript可以...
以上内容总结了《JavaScript DOM 编程艺术》第一章的读书笔记,概括了JavaScript简史,从而让我们了解到这一语言的发展脉络,以及它如何从最初的技术竞争中走向标准化,并最终成为现代Web开发不可或缺的一部分。
《DWR3学习笔记<一>——深入了解Direct Web Remoting技术》 Direct Web Remoting (DWR) 是一个开源的Java库,它允许JavaScript在Web浏览器中与服务器端的Java对象进行交互,实现异步更新页面,从而提高Web应用的...
标题《jQuery学习笔记之基础中的基础》表明本文是关于jQuery的入门指导,针对的是刚开始接触jQuery的初学者,旨在传授jQuery的核心概念和基础用法。内容围绕jQuery的核心功能和优势展开,通过实例操作和对比,介绍...
1. **DWR的基本原理**:DWR通过JSON或XML格式在浏览器与服务器之间传输数据,实现了AJAX(Asynchronous JavaScript and XML)的功能,但比传统的AJAX更易用,因为它隐藏了大部分复杂性,开发者只需要关注业务逻辑。...
在标题“epub-0.3.js javascript实现”中,提到的是epub.js的一个特定版本——0.3版。这个版本可能包含了该库的一系列功能,例如解析EPUB文件的元数据、章节结构、样式和脚本,以及渲染内容到网页上。开发者通常会...
跨域解决方案是对Web开发中遇到的一个重要问题的回应,源于浏览器的安全策略——同源策略。同源策略限制了从一个域名、协议或端口访问另一个域名、协议或端口的资源,以保护用户数据不被恶意网站窃取。在开发过程中...