【发布时间】:2013-12-01 17:35:56
【问题描述】:
我正在寻找一种在移动设备上查看我的网站时禁用 qtip2 工具提示的方法。 在桌面浏览器中,工具提示出现在悬停时,在移动设备上,当文本输入被触摸时它们会弹出(这是大多数工具提示,通过 title="")。我只能通过触摸其他地方让它消失,我怀疑最终用户会在被它惹恼之前弄清楚这一点。
查看 API 并在此处搜索 SO,我遇到的少数解决方案对我不起作用。 这是我尝试过的:
$('[title!=""]').qtip({// Grab elements with a title attribute that isn't blank.
style: 'qtip-tipsy',
position: {
target: 'mouse', // Track the mouse as the positioning target
adjust: { x: 5, y: 15 } // Offset it slightly from under the mouse
}
});
//check window size on page load.
if ($(window).width() < 960) {
alert('Less than 960');
//$('[title!=""]').qtip('hide').qtip('disable');
$('[title!=""]').qtip('destroy', true); // Immediately destroy all tooltips belonging to the selected elements
}
else {
//alert('More than 960');
}
});
在测试时,当我将浏览器设置为小于 960 并刷新时会触发警报,因此它似乎可以正确读取该代码。 我尝试了我在 craigsworks.com 论坛上阅读过的两种方法,第一种是使用隐藏和禁用(当前在上面的示例中注释掉,而我尝试下一个),第二种是使用“销毁” 我还尝试在“位置”的最后一个大括号之后和结尾 }) 之前直接添加窗口大小代码;
然后我尝试直接访问 api,但我真的不知道我是否正确执行它,我找不到任何包含所有需要代码的示例。 这是我尝试过的:
var tooltips = $('[title!=""]').qtip({// Grab elements with a title attribute that isn't blank.
style: 'qtip-tipsy',
position: {
target: 'mouse', // Track the mouse as the positioning target
adjust: { x: -5, y: -15 } // Offset it slightly from under the mouse
}
});
// Grab the first element in the tooltips array and access it's qTip API
var api = tooltips.qtip('api');
//check window size on page load.
if ($(window).width() < 960) {
alert('Less than 960');
$tooltips.qtip('destroy', true); // Immediately destroy all tooltips belonging to the selected elements
}
else {
//alert('More than 960');
}
});
过去几天我一直在处理这个问题(还有其他一些我无法开始工作的领域,比如使用按钮打开/关闭工具提示,但我专注于一件事一次)。我希望你们中的一些更擅长编码的人能看到我哪里出错了。
【问题讨论】:
-
你在用jqm吗?试试这个
if ($(window).width() < 960) { $('[title!=""]').on("click', function () { return false; }); } -
我正在使用 jqm。如果窗口宽度是移动大小,我更希望 qtips 根本不加载。除此之外,有关其格式的某些内容会导致语法错误。就像我说的,我不是这方面的专家,所以也许我只是遗漏了一些明显的东西。我尝试了多种方法(有和没有结束大括号,用这个替换 $tooltips 行),它报告了一个语法错误。
-
会刚刚编辑最后一条评论,但显然它们只能编辑 5 分钟,而我正在试验……等等!您在点击开始时有一个双引号,在......现在尝试之后有一个单引号。没有。当我点击应该在桌面浏览器中显示提示的任何内容时,仍然会在移动设备上显示提示。
-
你找到答案了吗?我也在为同样的问题苦苦挣扎……
标签: jquery jquery-mobile qtip2