title: ReactJS doesn't render in IE11
body: <p>My site works flawlessly in web browsers, but IE11 shows this error in console. </p>
  
  <p>What should I do with this?</p>
  
  <pre><code>React.render(
      &lt;NewsFeed tagFilter={tagFilter}/&gt;,
      document.getElementById('newsFeed')
  );
  </code></pre>
  
  <p><strong>'NewsFeed' is undefined</strong></p>
  
  <p><strong>EDIT:</strong>
  Here is the newsfeed (.js JSX file, included in page's header)</p>
  
  <pre><code>var Article = React.createClass({
      askDelete: function(id,title) {
          if (confirm("Delete the '"+title+"'?")) {
              $.ajax({
                  url: "/-----removed----/"+id,
                  type: "DELETE",
                  async: false,
                  cache: false,
                  dataType: 'json'
              });
              location.reload();
          }
      },
      handleClick: function(id) {
          React.unmountComponentAtNode(document.getElementById('editor'));
  
          React.render(
                  &lt;PostEditor
                      postId={id}
                  /&gt;,
                  document.getElementById('editor')
              );
          functAdmin.showEditor();
      },
      render: function() {
          var editIcon=[];
          var boundClick = this.handleClick.bind(this, this.props.id);
          var boundDeleteClick = this.askDelete.bind(this, this.props.id,this.props.title);
          editIcon.push(&lt;span className="adminActionsNewsfeed" key={"editIcon"+this.props.id}&gt;&lt;i className="pointer gray fa fa-edit" onClick={boundClick}&gt;&lt;/i&gt;&lt;i className="pointer fa fa-remove red" onClick={boundDeleteClick} key={"deleteNewsIcon"+this.props.id}&gt;&lt;/i&gt;&lt;/span&gt;);
          var tags=[];
          if (typeof this.props.tags != 'undefined') {
              var tagArray=this.props.tags.split(",");
              for(tag of tagArray){
                  tags.push(&lt;a href={"?tag="+tag} className="postTag"&gt;{tag}&lt;/a&gt;);
              }
          }
          return (
              &lt;div className="article" key={"newsArticle"+this.props.id}&gt;
                  {editIcon}
                  &lt;span className="articleTitle"&gt;
                      {this.props.title}
                  &lt;/span&gt;
                  &lt;span className="articleTime"&gt;
                      {funct.formatDate(this.props.time)}
                  &lt;/span&gt;
                  &lt;div className="articleBody"&gt;
                      {this.props.children}
                  &lt;/div&gt;
                  &lt;div className="tagLine"&gt;{tags}&lt;/div&gt;
              &lt;/div&gt;
          );
      }
  });
  
  var ArticleList = React.createClass({
      render: function() {
          this.props.data.sort(funct.SortByTime);
          var postNodes = this.props.data.map(function (item) {
              var tags = item.news_tags.toLowerCase().split(",");
              if ((tagFilter=="") || (tags.indexOf(tagFilter) &gt; -1)) {
                  return (
                      &lt;Article
                          key={"news"+item.news_id}
                          title={item.news_title}
                          tags={item.news_tags}
                          time={item.news_time}
                          id={item.news_id}
                      &gt;
                      {item.news_body}
                      &lt;/Article&gt;
                  );
              }
          });
          return (
              &lt;span&gt;
                  {postNodes}
              &lt;/span&gt;
          );
      }
  });
  
  var NewsFeed = React.createClass({
      launchAdd: function() {
          React.unmountComponentAtNode(document.getElementById('editor'));
          React.render(
                  &lt;PostEditor
                      postId={""}
                  /&gt;,
                  document.getElementById('editor')
              );
          functAdmin.showEditor();
      },
      getInitialState: function() {
          return {data: []};
      },
      refreshPostStatus: function() {
          $.ajax({
              url: "/-----removed----",
              type: "GET",
              cache: false,
              dataType: 'json',
              success: function(data) {
                  this.setState({data: data});
              }.bind(this),
              error: function(xhr, status, err) {
                  console.log( xhr.responseText);
                  console.error(this.props.url, status, err.toString());
              }.bind(this)
          });
      },
      componentDidMount: function() {
          this.refreshPostStatus();
      },
      render: function() {
          var addIcon=[];
          addIcon.push(&lt;div className="addPostLine"&gt;&lt;i className={funct.statusIcon[5]+" fa-2x"} onClick={this.launchAdd} /&gt;Add new post&lt;/div&gt;);
          return (
              &lt;span&gt;
                  &lt;i className="fa fa-file fa-lg blue"&gt;&lt;/i&gt;
                  {addIcon}
                  &lt;h1&gt;Netbiter funct System Information&lt;/h1&gt;
                  &lt;ArticleList data={this.state.data}/&gt;
              &lt;/span&gt;
          );
      }
  });
  </code></pre>