我很困惑。一些基本的jQuery方法不起作用。当另一个人做的时候。
这是我的application.js文件
//= require jquery
//= require jquery_ujs
//= require bootstrap
//= require bootstrap-toggle-buttons
//= require turbolinks
//= require_tree .
我有一个模态,我想在点击div时进行一些更改(添加勾号)。
此代码有效。
$(document).ready(function(){
$( ".product-to-choose" ).click(function() {
var icon = jQuery(this).find("i");
icon.css("display","inline");
});
});
但是当我想添加未选中的选项时:
$(document).ready(function(){
$( ".product-to-choose" ).click(function() {
var icon = jQuery(this).find("i");
icon.toggleClass('visible');
});
});
它不起作用......
所以我尝试另一种方式:
$(document).ready(function(){
$( ".product-to-choose" ).click(function() {
var icon = jQuery(this).find("i");
if(icon.hasClass('visible')){
icon.removeClass('visible');
}
else{
icon.addClass('visible');
}
});
});
然后它首先添加了类,但是当我再次单击时,什么都没有消失。 我不知道是怎么回事。是jQuery和Rails之间的任何不兼容吗?
答案 0 :(得分:0)
经过一些研究后,我知道问题在于在Rails中集成jQuery和turbolinks。 我找到了这个主题,例如:Rails 4: how to use $(document).ready() with turbo-links
我希望它对某些人有用,对我来说遗憾的是不完全正确。 当我在脚本标签中有代码时一切正常。但是当js代码在application.js中时,它不起作用。