zoukankan      html  css  js  c++  java
  • jquery 动态创建元素

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

    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等方法添加到指定的对象中,具体可以查看

       http://www.cnblogs.com/shuang121/archive/2011/12/16/2290189.html

    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/>")的形式创建对象.

      

    多思考,多创新,才是正道!
  • 相关阅读:
    C/C++多文件之间的变量定义
    PKU POJ 2186 Popular Cows 强连通分量
    重载函数
    ZOJ 2763 Prison Break
    201357 训练赛总结
    hdu 4467 Graph 构造
    201356 训练赛总结
    201353 NEERC 2012, Eastern subregional contest
    2013512 CF 183 总结
    一道动态规划
  • 原文地址:https://www.cnblogs.com/shuang121/p/2345561.html
Copyright © 2011-2022 走看看