turned事件在什么情况下触发
时间: 2023-08-22 11:03:52 浏览: 47
`turned` 事件在以下情况下会被触发:
1. 当用户通过翻页手势或点击翻页按钮将页面从一侧翻到另一侧时,会触发 `turned` 事件。这包括用户向前或向后翻页,以及用户通过点击翻页按钮快速跳转到指定页码。
2. 当使用编程方式调用 `turn` 方法来翻页时,也会触发 `turned` 事件。例如,通过调用 `$("#flipbook").turn("next")` 来翻到下一页。
3. 在初始化插件时,如果设置了 `autoCenter: true`,会自动将页面居中显示,并触发一次 `turned` 事件。
总之,只要页面发生了翻页动作,无论是用户手动翻页还是编程方式翻页,只要插件检测到了页面的变化,就会触发 `turned` 事件。你可以在 `turned` 事件的处理程序中执行相应的操作,例如更新页面内容、记录当前页码等。
希望以上信息对你有所帮助!如果有更多问题,请随时提问。
相关问题
turned事件不执行
如果 `turned` 事件没有被执行,可能是由于以下几个原因:
1. 事件绑定错误:请确保你正确绑定了 `turned` 事件,并且绑定的位置和方式是正确的。在示例代码中,我们是在 `start` 事件处理程序内部使用 `$(this).bind("turned", function(event, page, view) { ... })` 来绑定 `turned` 事件。请检查你的代码,确保绑定逻辑正确且没有语法错误。
2. 翻页元素问题:确认你的翻页元素(即 `#flipbook`)已经正确初始化并渲染。如果翻页元素没有正确初始化,可能会导致事件无法触发。请确保你已经正确加载了 turn.js 插件,并使用正确的选择器选择到翻页元素。
3. 事件触发条件问题:检查你的页面结构和代码逻辑,确保在合适的条件下触发 `turned` 事件。例如,在翻到指定页码时才触发 `turned` 事件,你需要在代码中添加相应的判断逻辑。
4. 其他代码冲突:检查你的代码中是否有其他逻辑或插件可能导致 `turned` 事件被阻止或取消。某些插件或脚本可能会干扰事件的正常触发和执行。
请检查以上几点,以确定为什么 `turned` 事件没有被执行。如果问题仍然存在,请提供更多的代码和上下文信息,以便我能够更好地帮助你解决问题。
为什么start事件里面的console输出了而里面嵌套的turned事件里面的结果没有输出
在嵌套事件处理程序时,确保在 `start` 事件处理程序内部正确绑定了 `turned` 事件处理程序,以便它能够被触发并输出结果。
以下是一个示例,展示了如何在 `start` 事件处理程序中嵌套绑定 `turned` 事件处理程序:
```javascript
$("#flipbook").bind("start", function(event, pageObject, corner) {
console.log("用户开始翻页");
// 在 start 事件处理程序中绑定 turned 事件处理程序
$(this).bind("turned", function(event, page, view) {
console.log("完成翻页");
console.log("页码:", page);
console.log("可见页信息:", view);
});
});
```
请确保你已经正确使用了嵌套的事件绑定,并且在正确的位置添加了相应的代码。如果你仍然无法看到 `turned` 事件的输出结果,请检查以下几点:
1. 确保你已经正确加载了 turn.js 插件,并初始化了相应的翻书区域。
2. 确保书籍已经加载和渲染完毕,以确保 `turned` 事件可以被正确触发。
3. 检查你是否有其他代码或逻辑可能导致 `turned` 事件被阻止或取消。
4. 如果你在其他地方已经绑定了相同的事件,并且取消了事件冒泡或默认行为,可能会影响到 `turned` 事件的触发。
请确保以上几点没有问题,以便正确触发 `turned` 事件并输出结果。如果问题仍然存在,请提供更多的代码和上下文信息,以便我能够更好地帮助你解决问题。