这通常是我如何管理渐进增强同时保持体验清洁,但它有多安全?是否存在竞争条件,这不起作用?
想象一下简单的抽象场景,如果你有javascript支持,你想要以不同的方式显示...这通常是我最终会做的事情:
<div id="test">original</div>
<script type="text/javascript">
var t = document.getElementById('test');
t.innerHTML = 'changed';
</script>
Run Code Online (Sandbox Code Playgroud)
许多人可能会声称你应该使用一个框架并等待一个domready事件,并在那里进行更改..但是有一个显着的延迟,其中'test'元素已经在文档结束之前呈现并且css已经准备好了一个domready触发..因此导致明显的'原始'闪烁.
此代码是否容易出现竞争失败?或者我可以保证一个元素是可发现的并且如果它存在于脚本之前可以修改吗?
提前致谢.