javascript - react这两种写法有区别么

查看:86
本文介绍了javascript - react这两种写法有区别么的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

<div id="example"></div>
   
    <script type="text/babel">
        ReactDOM.render(
      <div className="ss" >Hello, world!</div>,example
    );
    </script>
    <div id="example"></div>
   
    <script type="text/babel">
        ReactDOM.render(
      <div className="ss" >Hello, world!</div>,document.getElementById('example')
    );
    </script>

解决方案

有些老式浏览器,可以只用用id访问dom元素(假如:<div id="example"></div>),现在流行的浏览器有些不能这样调用。

ID的方式,你用这个浏览器可以用,不代表其他浏览器可以用,不代表这个浏览器以后可以用。

为了兼容性,最好是乖乖的用 document.getElementById('example'),这个已经是标准的一部分了,无论过去、还是未来,只要还存在浏览器这种载体,估计永远都可以使用。

测试了一下,大部分情况下,结果都是一样的
如果特殊的页面,对,就是这个问题页面:https://segmentfault.com/q/1010000007533523,写了两个 ID=icon4weChat 的div。
在控制台输入:icon4weChat,很多浏览器结果就不一样了:

IE9/IE11/Safari/Chrome/(Oprea假如还算):

icon4weChat[0] == document.getElementById('icon4weChat')

FireFox:

icon4weChat == document.getElementById('icon4weChat')

这篇关于javascript - react这两种写法有区别么的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆