渲染执行顺序问题

页面中定义了一个select元素,我想通过js修改select元素进行修改。其中js代码是放在$(document).ready内。这样就存在一个问题,select先渲染完毕并显示出来,然后执行了js代码。我想要的效果是select渲染完毕后,执行完js代码再显示出来。该如何做呢?

阅读 3.5k
3 个回答

那你最开始把dispaly设置为none,处理完你的逻辑之后再该回去呗

题主可以试试这个方法:
在select标签后直接写原生js,比如下面这个例子

<div id="foo" style="display:none;"></div>
var foo = document.getElementById("foo");
foo.style.display = "block";

这样就可以在dom构建出来之后马上就显示。
题主的问题也可以使用这个思路。

方法一 : 渲染直接在js中进行,在js中进行html的拼接计算,然后再打印到页面的固定元素中去。

方法二 : 在服务器端进行渲染,生成页面的时候已经渲染好了

方法三 : 显示隐藏的控制

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题