Javascript Vue.js-如何从vuetify v-dialog组件“抓取”滚动事件
我正在处理的javascript项目正试图合并一个“滚动到顶部”按钮,该按钮仅在Vuetify v-dialog组件中向下滚动y轴20px后才会呈现。我们还有一个v-card,v-treeview在v-dialog中有可滚动的项目列表。然而,我似乎不知道如何在v-dialog组件中“抓取”滚动事件来触发任何东西Javascript Vue.js-如何从vuetify v-dialog组件“抓取”滚动事件,javascript,vue.js,vuetify.js,Javascript,Vue.js,Vuetify.js,我正在处理的javascript项目正试图合并一个“滚动到顶部”按钮,该按钮仅在Vuetify v-dialog组件中向下滚动y轴20px后才会呈现。我们还有一个v-card,v-treeview在v-dialog中有可滚动的项目列表。然而,我似乎不知道如何在v-dialog组件中“抓取”滚动事件来触发任何东西 <v-dialog> <v-card> <v-treeview> //scrollable list </v-treevi
<v-dialog>
<v-card>
<v-treeview> //scrollable list
</v-treeview>
</v-card>
</v-dialog>
有什么想法吗
这是一个非常类似的代码笔,我正在努力完成。
谢谢
将可滚动道具添加到
将v-scroll.self=onScroll添加到
按v-scroll文档滚动
将id添加到
id=为scrolltop选择的请求表单
添加按钮滚动到
顶部与上面的代码笔相同
添加toTop方法:
toTop() {
document.getElementById('requestform').scrollTop = 0
},
我遇到了与OP相同的问题。在对话框中没有出现v-scroll或$vuetify.goTo的预期行为 最终,我通过利用 在对话框中添加的div上 在模板中:
<v-dialog>
<div id="thisElement">
<v-card>
<v-treeview>
//scrollable list
<v-btn @click="goToTop">Scroll Up</v-btn>
</v-treeview>
</v-card>
</div>
</v-dialog>
看起来你忘了添加link@DavidGo谢谢你抓住了!那么,您已经尝试在对话框中放置@scroll事件,对吗?您添加了Scrollable道具吗?我确实试过了。老实说,因为v-treeview在v-card中,也就是在v-dialog中,所以我甚至不确定哪个组件是真正滚动的组件。我已经尝试在所有的屏幕上添加一个scroll事件和v-scroll指令,但我无法让任何scroll事件触发任何东西。codePen示例作为一个独立组件完美地运行在任何页面视图的根级别,因为它可以由DOM窗口事件触发,但我无法从Vuetify组件内部访问任何“scroll”事件。他们请求在滚动视图时触发的事件。这样,它们可以在滚动开始时触发行为。我相信,您的回答没有显示这是如何完成的。是的,很遗憾,我无法在对话框中识别事件,因为它没有出现在对话框中,而只会出现在文档级别。这可能是因为对话框已从正常文档流中删除。
goToTop() {
document.getElementByID("thisElement").scrollIntoView();
},