0

我在标签中有一个复选框,如下所示:

<label class="css-label" for="iagree">
    <input type="checkbox" title="I accept Terms and Privacy Policy" name="iagree" id="iagree">
    I accept <a href="terms-of-use">Terms</a> and <a href="privacy">Privacy Policy</a>
</label>

它的目的是检查checkbox是否label被点击,并且我想在复选框之后显示标签文本。这对所有浏览器都无懈可击,除了 Opera Mini,它也运行良好,但令人讨厌的是它会重新加载页面。如何防止在当前结构的 Opera Mini 上单击复选框/标签时重新加载页面?

4

2 回答 2

1

Opera Mini 不会重新加载您的页面,它只是向转码服务器发出请求,以使用选中的复选框获取新的页面状态。Opera Mini 不处理页面,它会在 OBLM(Opera 二进制标记语言)中获取转码服务器的结果,然后将其显示在您的屏幕上。

任何时候文档状态发生变化——任何时候需要重新绘制或重排——Opera Mini 都必须向转码服务器发出请求。

来自Opera Mini 常见问题解答

因此,重新加载页面是真正的 Opera Mini 行为,用于更改复选框、单选或选择状态。

有关OBLM以及Opera Mini 工作原理的更多信息

附言

在标签内有一个复选框,如下所示:

<label class="css-label" for="iagree">
    I accept <a href="terms-of-use">Terms</a> and <a href="privacy">Privacy Policy</a>
</label>

代码示例中的标签中没有复选框。

于 2015-01-10T20:04:19.317 回答
0

Opera Mini 仅在您以任何方式使用 javascript 时才会发出请求,但如果您不使用页面,则不会发出请求

于 2015-12-16T15:28:11.413 回答