说一下问题描述:
父页面为一个.html文件,内部使用iframe标签嵌套一个使用vue开发的网站。在vue内部使用锚点定位时,定位到的内容没有与iframe的顶部对齐;而是与浏览器顶部对齐;导致父页面向上滚动
父页面:
子页面(vue):
解决方案:
使用jquery的平滑滚动
解决步骤:
1、在vue项目中引入jquery
使用命令: npm install jquery --save;安装完毕后在pakage.json中的dependencies中会出现jquery说明安装成功!
2、在项目根目录新建vue.config.js,假如以下代码:
const webpack = require('webpack');
module.exports = {
configureWebpack: {
plugins: [
new webpack.ProvidePlugin({
$:"jquery",
jQuery:"jquery",
"windows.jQuery":"jquery"
})
]
}
}
3、在使用jquery的vue文件中引入jquery。当然也可以在main.js中设置
5、在mounted生命周期中假如以下代码:
每次点击前一定要写scrollTop(0);不写的话就会导致锚点定位不准确;具体原因是为啥我也不知道。。。。。
6、完结!撒花!!!!
如果有更好的解决方案,请一定发出来。嘻嘻嘻