jquery 动态创建元素的方式介绍及应用


Posted in Javascript onApril 21, 2013

一般动态创建元素可以通过两种方式
1、Dom HTml

var select = document.createElement("select"); 
select.options[0] = new Option("加载项1", "value1"); 
select.options[1] = new Option("加载项2", "value2"); 
select.size = "2"; 
testDiv.appendChild(select); 
});

通过document的createElement方法创建,然后通过appendChild方法添加到指定的对象中即可

2、JQuery函数创建
$("<div style=\"border:solid 1px #FF0000\">动态创建的div</div>")
通过append,appendto,prepend,prependto等方法添加到指定的对象中,具体可以查看 
https://3water.com/article/35845.htm

3、页面加载的时候最好在页面加载完后执行创建
可以使用window.onload,但是在添加新的元素, 但是不幸的是浏览器执行window.onload函数不仅仅是在构建完DOM树之后, 也是在所有图像和其他外部资源完整的加载并且在浏览器窗口显示完毕之后. 所以如果某个图片或者其他资源加载很长时间, 访问者就会看到一个不完整的页面, 甚至在图片加载之前就执行了需要依赖动态添加的元素的脚本而导致脚本错误.

解决办法就是等DOM被解析后, 在图像和外部资源加载之前执行我们的函数.在jQuery中让这一实现变得可行

$(document).ready( 
function() { testDiv.innerHTML = "<div style=\"border:solid 1px #FF0000\">使用动态创建的$(document).ready(function)方法</div>"; } 
);

或者使用简便语法:
//jQuery 使用$(function)方法 
$( 
function() { testDiv.innerHTML += "<div style=\"border:solid 1px #FF0000\">使用$(function)方法</div>"; } 
);

使用$()将我们的函数包装起来即可. 而且可以在一个页面绑定多个函数, 如果使用传统的window.onload则只能调用一个函数.

所以请大家将修改DOM的函数使用此方法调用. 另外还要注意document.createElement和innerHTML的区别. 如果可以请尽量使用document.createElement和$("<div/>")的形式创建对象.

Javascript 相关文章推荐
JavaScript 应用类库代码
Jun 02 Javascript
javascript的offset、client、scroll使用方法详解
Dec 25 Javascript
可自己添加html的伪弹出框实现代码
Sep 08 Javascript
js实现省市联动效果的简单实例
Feb 10 Javascript
jquery插件lazyload.js延迟加载图片的使用方法
Feb 19 Javascript
JavaScript实现表格点击排序的方法
May 11 Javascript
javascript背景时钟实现方法
Jun 18 Javascript
整理Javascript数组学习笔记
Nov 29 Javascript
分享javascript实现的冒泡排序代码并优化
Jun 05 Javascript
微信小程序中上传图片并进行压缩的实现代码
Aug 28 Javascript
vue.js实现的全选与全不选功能示例【基于elementui】
Dec 03 Javascript
关于Vue Router中路由守卫的应用及在全局导航守卫中检查元字段的方法
Dec 09 Javascript
jQuery弹出(alert)select选择的值
Apr 21 #Javascript
jQuery登陆判断简单实现代码
Apr 21 #Javascript
JQuery操作Select的Options的Bug(IE8兼容性视图模式)
Apr 21 #Javascript
Jquery submit()无法提交问题
Apr 21 #Javascript
用表格输出1-1000之间的数字实现代码(附特效)
Apr 21 #Javascript
放弃用你的InnerHTML来输出HTML吧 jQuery Tmpl不详细讲解
Apr 20 #Javascript
对jQuery的事件绑定的一些思考(补充)
Apr 20 #Javascript
You might like
php产生随机数的两种方法实例代码 输出随机IP
2011/04/08 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
2017/08/28 PHP
javascript 打开页面window.location和window.open的区别
2010/03/17 Javascript
利用google提供的API(JavaScript接口)获取网站访问者IP地理位置的代码详解
2010/07/24 Javascript
javascript取消文本选定的实现代码
2010/11/14 Javascript
基于mouseout和mouseover等类似事件的冒泡问题解决方法
2013/11/18 Javascript
javascript中parseInt()函数的定义和用法分析
2014/12/20 Javascript
jQuery实现移动 和 渐变特效的点击事件
2015/02/26 Javascript
jQuery选择器源码解读(二):select方法
2015/03/31 Javascript
日常收藏的jquery技巧
2015/12/02 Javascript
JS基于ocanvas插件实现的简单画板效果代码(附demo源码下载)
2016/04/05 Javascript
javascript self对象使用详解
2016/10/18 Javascript
微信小程序之picker日期和时间选择器
2017/02/09 Javascript
Vue.js之slot深度复制详解
2017/03/10 Javascript
vue2.0 资源文件assets和static的区别详解
2018/04/08 Javascript
wx-charts 微信小程序图表插件的具体使用
2019/08/18 Javascript
利用d3.js制作连线动画图与编辑器的方法实例
2019/09/05 Javascript
详解JavaScript匿名函数和闭包
2020/07/10 Javascript
Python实现多线程下载文件的代码实例
2014/06/01 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
2016/06/23 Python
使用Python3 编写简单信用卡管理程序
2016/12/21 Python
Python反射的用法实例分析
2018/02/11 Python
解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path
2019/06/12 Python
Pandas中Series和DataFrame的索引实现
2019/06/27 Python
在Pytorch中使用样本权重(sample_weight)的正确方法
2019/08/17 Python
如何在python开发工具PyCharm中搭建QtPy环境(教程详解)
2020/02/04 Python
Python爬虫爬取糗事百科段子实例分享
2020/07/31 Python
Python如何给函数库增加日志功能
2020/08/04 Python
详解python中的异常捕获
2020/12/15 Python
美国知名珠宝首饰品牌:Gemvara
2017/10/06 全球购物
德国50岁以上交友网站:Lebensfreunde
2020/03/18 全球购物
递归实现回文判断(如:abcdedbca就是回文,判断一个面试者对递归理解的简单程序)
2013/04/28 面试题
大学生怎样写好自荐信
2014/02/25 职场文书
党员四风自我剖析材料
2014/10/07 职场文书
2014年党务公开工作总结
2014/12/09 职场文书
还款承诺书范本
2015/01/20 职场文书