これは本当に簡単だと思いますが、うまくいきません。app/assets/javascript の help.js にスクリプトがあります。
これはロードされ、alert() を追加すると実行されますが、javascript (jquery click()) を呼び出そうとしても何も起こりません。ページにjavascriptコードがある場合、ページの下部にある場合に機能します。
アセットからのインクルードがページの先頭に配置されているため、スクリプトが機能しないと思います。そう...
- 私は JavaScript を書くことにまったく価値がないのでしょうか?
- javascript を最後に配置する必要がありますか?完全な javascript_include_tag を移動せずにアセットからそれを要求する場合はどうすればよいですか? (アプリケーションから除外して個別にロードすることもできると思いますが、それは間違っているように感じます)。
- これが機能しないのは非常に奇妙に感じますが、どこで間違ったのでしょうか?
help.js
$('.clickme').click(function() {
$('#working').show();
var htmlStr = this.getAttribute('data-message');
$('#helper_box').html(htmlStr);
$('#helper_box').toggle('slow', function() {
// Animation complete.
$('#working').hide();
});
});
index.html.erb
<div class="clickme" data-message="Something...">
<%= image_tag("question_mark.png", :alt => "helper") %><br>
</div>