开发者社区> 问答> 正文

页面加载完后,js没有执行。求解决办法~~~?报错

场景是这样的:普通的后台管理,点击左侧菜单,会用ajax方法替换右侧的body。如果右侧有加载完页面执行的方法,那么会正常执行,但是~~~如果右侧页面报错,没有完全加载完,那么点击左侧菜单,选择其他正常页面的时候,正常页面正常加载完成后,那些JS方法还是不执行。

请问有没有大牛明白这是什么原因,该怎么解决~~~

展开
收起
爱吃鱼的程序员 2020-06-14 21:31:29 700 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    看意思应该是在你要调用的方法操作的对象还没加载出来,试试延迟加载<preclass="brush:js;toolbar:true;auto-links:false;">setTimeout(function(){alert("延迟0.3秒加载")},300);



    <atarget='_blank'>@呼啦_小呆那应该就是加载顺序的问题,延迟加载试一下。应该都是都加载出来了,但是没有触发onload事件~入浏览器的console看下吧,原因很多(加载顺序,语法错误,冲突等等),这样猜不行。。。。

    因为数据肯呢过没有加载彻底页面就已经开始进行样式渲染和JS的数据调用;但是其实是没有数据的;所以会停留在这个错误上;所以你必须等到数据加载完成之后再进行样式渲染和JS数据操作;

    如果你的数据使用Ajax获取的json数据这样最好;添加一个$(function()
    {
       $.ajax({
          url:'xxx',
          type:'GET',
          async:false,
          success:function(obj)
          {
             dataJson=obj;
          }
       })
    })

    这样的话你其他的操作就必须等所有数据传输过来才能使用;就不会报错了,而导致真个页面程序出错

    2020-06-14 21:31:48
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript异步编程 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载