javascript对我来说是全新的。我是一个相对缺乏经验的rails开发人员。我已经在一个名为joyride的rails 3应用程序中实现了一些东西,这是一个jquery插件,并为用户提供了一个“浏览页面”的弹出消息。这是在加载页面时很好地运行巡视的脚本
:javascript
$(window).load(function() {
$('#joyRideTipContent').joyride({
modal:true,
expose: true
});
});
完美无缺。我的问题是,当点击一个按钮而不是加载页面时,我需要它运行。
所以我从HAML页面上的一个简单按钮开始
%button#myBtn
Lauch tour
这给了我我的按钮。然后我写了一个函数(原谅我的第一个),按下按钮时激活代码。
:javascript
var myBtn = document.getElementById('myBtn');
myBtn.addEventListener('click', function(event) {
$("#joyRideTipContent").joyride({
modal:true,
expose: true
});
});
这是奇怪的地方。代码工作 - 在第二次点击。很明显,第一次传递了一些东西,然后第二次执行,但我离开了我的深度,任何人都可以帮忙!
感谢
编辑:
在建议中将代码更改为此,但存在同样的问题......
$(function() {
$("#myBtn").click( function()
{
$("#joyRideTipContent").joyride({
modal:true,
expose: true
});
}
);
});
编辑:为有时间的人添加了一个jsfiddle来查看http://jsfiddle.net/garethburrows/beonc06z/
答案 0 :(得分:0)
尝试
$('#myBtn').on('click', function(event) {
$("#joyRideTipContent").joyride({
modal:true,
expose: true,
autoStart: true
});
});
你混合了jquery和经典的js - 不好。