我可以在 jquery 中的鼠标悬停时调用 qTip (或调用 qTip 的任何其他有效方式)
我下面有这段代码,它工作正常,但似乎没有必要,因为它循环遍历所有 div.test,即使我从未将鼠标悬停在它们上。我尝试将 .qTip() 函数放入鼠标悬停事件中以提高效率,但这似乎不起作用。
关于如何使下面的代码更高效有什么建议吗?
<script type="text/javascript">
$(document).ready(function () {
$('div.test').each(function () {
var tooltipHtml = $(this).next('.tooltip').html();
$(this).qtip({
content: {
text: tooltipHtml
},
style: { width: 450 }
});
});
});
I have this code below which works fine but seems unnecessary as it loops through all div.test even if i never mouse over them. I tried putting the .qTip() function inside the mouseover event to be more efficient but that doesn't seem to work.
Any suggestions on how to make the below code more efficient?
<script type="text/javascript">
$(document).ready(function () {
$('div.test').each(function () {
var tooltipHtml = $(this).next('.tooltip').html();
$(this).qtip({
content: {
text: tooltipHtml
},
style: { width: 450 }
});
});
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以像这样改进它:
content
选项 采用一个 jQuery 对象(在文档中称为 jQuery DOM 数组),因此无需为每个对象抓取 HTML。 但是,如果您仍然绑定大量这些(数百个或更多),性能可能仍然达不到您在旧版浏览器中所追求的效果。You can improve it a bit like this:
The
content
option takes a jQuery object (referred to as a jQuery DOM array in the documentation), so there's no need to crawl the HTML for each one. But, if you're still binding a large number of these (hundreds or more) performance still may not be what you're after in older browsers.