I am having the same issue, but as far as I can tell the widgets.js is not being loaded as when I look at the source all I see is the exact script code I have in the html and nothing extra. Is there any way that I can determine if the js is being blocked somehow? I am not really sure where to go from here.
I had initially been trying to embed this within a SharePoint page, but I was worried that was part of the issue so I created a simple .html file and put the code in there with the same results. I have only tried IE so far.
<html>
<body>
<a class="twitter-timeline" href="https://twitter.com/hashtag/nasa" data-widget-id="685461870069821440">#nasa Tweets</a>
<script>window.twttr = (function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0],
t = window.twttr || {};
if (d.getElementById(id)) return t;
js = d.createElement(s);
js.id = id;
js.src = "https://platform.twitter.com/widgets.js";
fjs.parentNode.insertBefore(js, fjs);
t._e = [];
t.ready = function(f) {
t._e.push(f);
};
return t;
}(document, "script", "twitter-wjs"));</script>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</body>
</html>