拥有:iOS 7.x,iPad,UIWebView。
我在UIWebView中显示HTML + JavaScript。目标是允许用户点击某些HTML页面元素并通过它做出决定。
用户在UIWebView中看到HTML - >用户点击他们喜欢的选项 - >从UIWebView检索的选项检查 - >和处理......
我将此HTML代码用于tappable元素:
<div style="height:100%;width:100%" onclick="this.addOrRemoveClass('selected'); redirect('pivot://reference?competency=3')">3 Communicates Instructional Needs</div>
以及以下JavaScript代码,以便在随后的点击中突出显示并取消选择:
function redirect(url) {
location.href = url;
}
Element.prototype.hasClass = function (className) {
return new RegExp(' ' + className + ' ').test(' ' + this.className + ' ');
}
Element.prototype.addOrRemoveClass = function (className) {
if (!this.hasClass(className)) {
this.className = className;
}
else {
this.className = '';
}
}
function redirect(url) {
location.href = url;
}
问题是:当我点击“tappable”时,首先用一些“默认”颜色突出显示它(有些灰色),然后用我的颜色突出显示它。
什么更令人生气:TAP事件和突出显示之间有半秒到秒的延迟。
谁知道变通办法或者只能解释它是什么?
谢谢!