我如何在移动的初始化marquee并在桌面上使用jQuery销毁它?每次我最小化窗口宽度时,我想检查它是否达到最小阈值,如果它小于<767 px,我想初始化字幕。如果用户扩展窗口宽度> 767 px,我希望字幕被破坏。
我现在的代码似乎是错误的,因为它崩溃了整个网站。
这是我用来参考的存储库https://github.com/aamirafridi/jQuery.Marquee
<script src="//cdn.jsdelivr.net/npm/jquery.marquee@1.6.0/jquery.marquee.min.js" type="text/javascript" defer></script>
<script>
window.onload = function () {
if (window.jQuery) {
$(function () {
var width = $(window).width();
if (width <= 767) {
$('.tt-services-listing').marquee({
duration: 20000,
duplicated: true,
delayBeforeStart: 0,
startVisible: true,
});
}
$(window).on('resize', function () {
if (width >= 768) {
// I want to check here each time the user resize, if hits the threshold, DESTROY marquee here
$('.tt-services-listing').marquee('destroy');
} else {
$('.tt-services-listing').marquee({
duration: 20000,
duplicated: true,
delayBeforeStart: 0,
startVisible: true,
});
}
});
});
}
};
</script>
2条答案
按热度按时间jgwigjjp1#
您需要检查插件是否在该元素上初始化。
您可以像
data-marqueeinit
一样分配data-*
属性。您还可以使用
window.matchMedia()
来检查当前的根宽度pn9klfpd2#
是否必须使用jQuery?如果不是,那么我相信它也可以通过媒体查询来实现。
只要把这些行添加到你的CSS文件中...
//css从这里开始//