有没有办法使用php检测哪个标签处于活动状态?原因是我想“重置”非活动标签以显示其默认内容,而不是上一次执行的操作。
我发现这段代码有助于记住哪些标签处于活动状态(页面刷新后) - 效果很好:
<script type="text/javascript">
$(function() {
// http://balaarjunan.wordpress.com/2010/11/10/html5-session-storage-key-things-to-consider/
//
// Define friendly index name
var index = 'key';
// Define friendly data store name
var dataStore = window.sessionStorage;
// Start magic!
try {
// getter: Fetch previous value
var oldIndex = dataStore.getItem(index);
} catch(e) {
// getter: Always default to first tab in error state
var oldIndex = 0;
}
$('#tabs').tabs({
// The zero-based index of the panel that is active (open)
active : oldIndex,
// Triggered after a tab has been activated
activate : function( event, ui ){
// Get future value
var newIndex = ui.newTab.parent().children().index(ui.newTab);
// Set future value
dataStore.setItem( index, newIndex )
}
});
});
答案 0 :(得分:1)
您无法使用PHP检测HTML内容,当输出完成后,与服务器的连接已关闭,您无法再访问服务器。
唯一的方法是Ajax,但这对于没有页面重新加载的实时修饰符来说是无稽之谈。 您应该使用纯JQUery来解决这个问题。
您可以制作2个内容容器,并以隐藏状态显示内容的一个原始版本,并进行编辑。
<div id="original" style="display: none;">
original content
</div>
<div id="custom">
custom content
</div>
如果要恢复原始文本,可以切换容器显示:
<script type="text/javascript">
$("#original").toggle();
$("#custom").toggle();
</script>
甚至用原始内容覆盖修改后的内容:
<script type="text/javascript">
$("#custom").html($("#original").html());
</script>