js - 多个函数动态加载

    //动态添加物流锁的IEMI列表.
    function createLi() {
        var r = ‘<s:property value="#session.locks"/>‘;
        if (!r)
            return;
        //部门名称.
        var department = document.getElementById(‘department‘);
        var departmentName = ‘<s:property value="#session.departmentName"/>‘;
        department.innerHTML = ‘<h3>‘ + departmentName + ‘</h3>‘;
        //IEMI列表.
        var IEMEArr = JSON.parse(r);
        for ( var i = 0; i < IEMEArr.length; i++) {
            //IEMI项.
            var li = document.createElement("li");
            var lockIMEI = IEMEArr[i];
            li.innerHTML = "<a>" + lockIMEI + "</a>";
            li.className = ‘sliderTag‘;
            //添加IEMI.
            var ul = document.getElementById("sliderNav");
            ul.appendChild(li);
        }

    }
    //点击锁编号时,执行ajax请求.
    function lock_request() {
    //对id为‘sliderNav‘的ul中的li执行操作.
        $("#sliderNav li").click(function() {
            var idx =  $(this).index();
            //第一个li为‘单位名,不操作.
            if(0 === idx)
                return;
            var params = {
                lockIMEI : $(this).text()
            };
            $.ajax({
                type : "POST",
                cache: false,
                async :true,
                //当struts.xml文件的配置中package的namespace不为‘/‘时(‘sys_v27‘为项目名).
                url : "/sys_v27/locks/Lock_queryMapByAttSuccess",
                data : params,
                dataType : "text", //json格式对于map的json格式竟然不起作用(IE10).
                //contentType: "application/x-www-form-urlencoded; charset=utf-8",
                success : function(json) {
                    var obj = $.parseJSON(json); //使用这个方法解析json
                    var lockJson = obj.result; //result是和action中定义的result变量的get方法对应的
                    addMarker(lockJson);

                },
                error : function(json) {
                    handle_err(json);
                    return false;
                }
            });
        });
    }

    //自动加载js的函数.
    function addLoadEvent(func) {
        var oldonload = window.onload;
        if (typeof window.onload != ‘function‘) {
            window.onload = func;
        } else {
            window.onload = function() {
                oldonload();
                func();
            };
        }
    }
    //--自动加载.
    addLoadEvent(new Function("mapInit();"));
    addLoadEvent(new Function("createLi();"));
    addLoadEvent(new Function("lock_request();"));

  使用自定义js函数:addLoadEvent, 可以多次指定‘自动执行‘的js函数. 本例中, 指定加载‘地图‘, 即mapInit() 函数, 自动加载‘物流车‘列表, 注册ajax请求:当点击物流锁的li时,请求对应的详细信息.

时间: 2024-10-24 12:50:52

js - 多个函数动态加载的相关文章

[JS前端开发] js/jquery控制页面动态加载数据 滑动滚动条自动加载事件

页面滚动动态加载数据,页面下拉自动加载内容 相信很多人都见过瀑布流图片布局,那些图片是动态加载出来的,效果很好,对服务器的压力相对来说也小了很多 有手机的相信都见过这样的效果:进入qq空间,向下拉动空间,到底部时,会动态加载剩余的说说或者是日志 今天我们就来看看他们的实现思路和js控制动态加载的代码 下面的代码主要是控制滚动条下拉时的加载事件的 在下面代码说明出,写上你的操作即可,无论是加载图片还是加载记录数据  都可以 别忘了引用jquery类库 [JavaScript] 纯文本查看 复制代码

动态加载js css 插件

简介 动态加载js,css在现在以及将来肯定是很重要的.目前来看前端代码编写的业务量已经远远超过后端编写的.随着对用户体验度逐渐增强,前端业务复杂,加载速度变得很慢很慢.为了解决这个问题,目前出现的两个前端模块加载器为require.js与sea.js,这两款模块加载器都不错.但是呢,有时候我仅仅需要的只是动态加载一个js,不需要把代码模块化,那我们只能自己手写一个加载函数. 简单的加载js /** * HTML动态加载js * @path {String} src地址必须带有后缀名.js *

使用js加载器动态加载外部Javascript文件

今天在网上找到了一个可以动态加载js文件的js加载器,具体代码如下: JsLoader.js 1 var MiniSite=new Object(); 2 /** 3 * 判断浏览器 4 */ 5 MiniSite.Browser={ 6 ie:/msie/.test(window.navigator.userAgent.toLowerCase()), 7 moz:/gecko/.test(window.navigator.userAgent.toLowerCase()), 8 opera:/o

[转]动态加载JS脚本

动态加载JS脚本 要实现动态加载JS脚本有4种方法: 1.直接document.write <script language="javascript"> document.write("<script src='test.js'><\/script>"); </script> 2.动态改变已有script的src属性 <script src='' id="s1"></script&

动态加载JS脚本的4种方法

要实现动态加载JS脚本有4种方法: 1.直接document.write <script language="javascript"> document.write("<script src='test.js'><\/script>"); </script>   2.动态改变已有script的src属性 <script src='' id="s1"></script> <

动态加载js,css(项目中需要的)

最近做的一个项目需要加入百度统计,大家都知道百度统计在页面引用就是一坨js,实现方法很简单引用到页面就ok了. 那么问题来了,虽然我不知道百度统计的原理是啥,我的测试服引用了百度统计,百度统计账号里面配置的域名是正式服的域名,但是却检测到了我测试服的访问量,这就尴尬了,然后就想到了动态加载js 1.动态加载js文件 我们要把这块链接加入页面 <script src="js/count.js"></script> 具体代码实现如下 function loadJs(

动态加载 js

要实现动态加载JS脚本有4种方法: 1.直接document.write <script language="javascript"> document.write("<script src='test.js'><\/script>"); </script> 2.动态改变已有script的src属性 <script src='' id="s1"></script> <s

Extjs学习----------动态加载js文件(减轻浏览器的压力)

动态加载js文件可以减轻浏览器的压力,本例使用了Ext.window.Window组件,该组件的学习地址:http://blog.csdn.net/z1137730824/article/details/38538277 具体实现步骤: (1)建立dynamic.jsp文件 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String

实现类似微博、QQ空间等的动态加载

微博.QQ空间等的动态加载方式属于滚屏加载技术,获取当前滚动条位置来触发onscroll()函数,向服务器发起请求,将请求得到的新的数据动态加载在页面上 本文利用该原理实现了动态加载,但不是检测当前滚动条位置来触发函数,而是由按钮事件触发,因此更简单一些. 走过的弯路 1) 将目前读取到的数据库中的位置存放在session中,当要加载更多的时候,去session中获得该值,动态加载后修改session中的值 错误原因:session是有缓存的,如果停留在当前页面,得到的值还是一开始的sessio