鼠标悬停时的原型阻止功能

发布于 2024-11-09 14:55:12 字数 488 浏览 2 评论 0原文

我得到这个函数,可以每隔一段时间自动滚动轮播。

function startInterval() {
if (totSliders > 1) {
interval = setInterval("next()", 7000); }
setInterval("Time()", 1000);
}
window.onload = function {
startInterval()
}

我希望,当鼠标悬停一些“class ul li”元素(每个)时,函数 startInterval() 驱动器清除、停止。简而言之,当鼠标悬停在轮播元素上时,自动滚动就会停止。相反,在鼠标移出时,应重新启动相同的功能(以及自动滚动)。

我指出 setInterval("Time()", 1000);父函数中包含的函数不应在这些鼠标悬停/移出事件中考虑。它应该只被称为onload。

我怎样才能实现我的目标?多谢

I get this function that, on interval, make an auto-scroll of a carousel.

function startInterval() {
if (totSliders > 1) {
interval = setInterval("next()", 7000); }
setInterval("Time()", 1000);
}
window.onload = function {
startInterval()
}

I want that, on mouse over some "class ul li" elements (each), the function startInterval() drives cleared, stopped. In short, on mouse over the carousel elements, the auto-scroll stops. On mouse out, instead, the same function (and so the auto-scroll) should be restarted.

I point that setInterval("Time()", 1000); function that's included in the parent one, should not be considered in these mouse-over/out events. It should be called onload only.

How could I achieve my target? thanks a lot

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

莫相离 2024-11-16 14:55:12

我只是尝试一下这个问题,因为这个问题有点难以理解。根据我的猜测,您正在尝试将 onmouseoveronmouseout 事件添加到所有 class ul li 元素,对吗?如果是这样的话,你可以这样做:

function pauseInterval(evt) {
   clearInterval(interval);
}

function resumeInterval(evt) {
   interval = setInterval("next()", 7000);
}

var listElements = $('class').getElementsByTagName('li');
for (var i = 0; i < listElements.length; i++) {
   listElements[i].on('mouseover', resumeInterval);
   listElements[i].on('mouseout', pauseInterval);
}

我肯定会对此进行错误测试,因为我确实没有这样做。

I'm just taking a stab at this one, because its somewhat hard to understand the question. From my guess, you're trying to add onmouseover and onmouseout events to all of the class ul li elements, correct? If that's the case, here's how you do it:

function pauseInterval(evt) {
   clearInterval(interval);
}

function resumeInterval(evt) {
   interval = setInterval("next()", 7000);
}

var listElements = $('class').getElementsByTagName('li');
for (var i = 0; i < listElements.length; i++) {
   listElements[i].on('mouseover', resumeInterval);
   listElements[i].on('mouseout', pauseInterval);
}

I'd definitely bug test this, cause I sure haven't.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文