当前位置: 首页> 汽车> 新车 > 男科医院治疗一次2000元_制作html网页的详细步骤_百度 官网_大连网站seo

男科医院治疗一次2000元_制作html网页的详细步骤_百度 官网_大连网站seo

时间:2025/7/9 11:08:17来源:https://blog.csdn.net/weixin_53431104/article/details/143869244 浏览次数: 0次
男科医院治疗一次2000元_制作html网页的详细步骤_百度 官网_大连网站seo

这个拖拽问题导致点击事件失效问题困惑了我好几个晚上,主要还是因为对前端不熟悉。今天问了ChatGPT它给出了一个解决方案「设置一个透明区域」。
主要代码就是<div class="drag-area"></div>该标签,该标签占满了整个视口使得整个其都可以拖拽,然后为不可拖拽的元素指定-webkit-app-region: no-drag; 该class 属性。
其实我没有理解这么做为什么可以响应点击事件,因为我尝试过只给 video 标签设置可拖拽,且将 Setting 标签设置为不可拖拽,层级也修改了,但还是无法响应点击事件。
我感觉最重要的应该就是浏览器到底是如何处理透明区域的事件。

<script setup lang="ts">
import { onMounted, ref } from 'vue'
import { useRouter, useRoute } from 'vue-router'
import { Setting } from '@icon-park/vue-next'const router = useRouter()
const route = useRoute()const toCameraPage = (query) => {console.log('toCameraPage...')router.push({name: 'camera',query: {...route.query,...query}})
}// 用 ref 引用 video 标签
const video = ref<HTMLVideoElement | null>(null)const constraints = {audio: false,video: true
}onMounted(async () => {if (video.value) {try {const mediaStream = await navigator.mediaDevices.getUserMedia(constraints)video.value.srcObject = mediaStreamvideo.value.onloadedmetadata = function () {video.value?.play()}} catch (error) {console.error('Error accessing media devices.', error)}}
})
</script><template><main class="all"><!-- 兼容拖拽 --><div class="drag-area"></div><Settingclass="setting-icon-wrapper"theme="outline"size="24"fill="#ffffff"@click="toCameraPage"/><video ref="video" class="camera"></video></main>
</template><style lang="less" scoped>
.all {position: relative;/* 确保子元素绝对定位生效 */.drag-area {position: absolute;top: 0;left: 0;width: 100vh;height: 100vh;-webkit-app-region: drag; /* 让整个区域可拖动 */z-index: 1;}.setting-icon-wrapper {position: absolute;cursor: pointer;z-index: 2;top: 3%;left: 50%;transform: translateX(-50%);-webkit-app-region: no-drag;}.camera {height: 100vh;object-fit: cover;}
}
</style>
关键字:男科医院治疗一次2000元_制作html网页的详细步骤_百度 官网_大连网站seo

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: