typeahead.js プラグインを開発マシンで動作させることができましたが、コードを heroku にプッシュすると動作しなくなりました。関連するコードは次のとおりです。
if (Meteor.isClient) {
window.onload = function() {
$("input.entry").typeahead({
name: "movies",
remote: {
url: "http://api.rottentomatoes.com/api/public/v1.0/movies.json?apikey=####################&page_limit=5&q=%QUERY",
dataType: 'jsonp',
template: ["<p><strong>{{title}}</strong></p>"],
engine: Handlebars,
filter: function(parsedResponse) {
var dataset = [];
movies = parsedResponse.movies;
for(i = 0; i < movies.length; i++) {
dataset.push({
value: movies[i].title,
details: movies[i].critics_consensus,
image: movies[i].posters.profile
});
}
return dataset;
}
}
});
$('input.entry').bind('typeahead:selected', function(obj, datum) {
Movies.insert({
name: datum.value,
consensus: datum.details,
image: datum.image,
voters: [],
creator: Meteor.user(),
time: Date.now()
});
});
}
window.onload
ページの読み込み後にコンテンツを JavaScript コンソールに貼り付けると、正常に動作します。
なぜこれが適切に機能しないのか、誰にも分かりますか?
ありがとう