我在WP后端使用thickbox进行预览或其他内容。在后端的自己的页面上,我的脚本工作得非常好,并且可以使用自定义宽度和高度作为thickbox。以下是我的代码:
<script type="text/javascript">
<!--
var viewportwidth;
var viewportheight;
if (typeof window.innerWidth != \'undefined\') {
viewportwidth = window.innerWidth-80,
viewportheight = window.innerHeight-100
} else if (typeof document.documentElement != \'undefined\'
&& typeof document.documentElement.clientWidth !=
\'undefined\' && document.documentElement.clientWidth != 0)
{
viewportwidth = document.documentElement.clientWidth,
viewportheight = document.documentElement.clientHeight
} else { // older versions of IE
viewportwidth = document.getElementsByTagName(\'body\')[0].clientWidth,
viewportheight = document.getElementsByTagName(\'body\')[0].clientHeight
}
//document.write(\'<p class="textright">Your viewport width is \'+viewportwidth+\'x\'+viewportheight+\'</p>\');
document.write(\'<a onclick="return false;" href="<?php echo WP_PLUGIN_URL . \'/\' . FB_ADM_BASEDIR; ?>/inc/index.php?username=<?php echo DB_USER; ?>&?KeepThis=true&TB_iframe=true&height=\'+viewportheight+\'&width=\'+viewportwidth+\'" class="thickbox button"><?php _e( \'Start Adminer\', FB_ADM_TEXTDOMAIN ); ?></a>\');
//-->
</script>
现在谈谈我的问题。我将在wp admin/plugins页面上使用一个thickbox。php和这里的脚本不起作用。WP将高度和宽度始终设置为核心值,这对于我的要求来说太小了。
也许其他读者有一个想法或解决方案。
非常感谢!
SO网友:Bactisme
我在互联网上没有看到的解决方案:
tb\\u position是thickbox函数,它对窗口大小执行奇怪的操作。当thickbox调用它时,您可以轻松简单地跳过它。
old_tb_position = tb_position;
tb_position = function(){
$("#TB_window").css({marginLeft: \'-\' + parseInt((TB_WIDTH / 2),10) + \'px\', width: TB_WIDTH + \'px\', height: TB_HEIGHT + \'px\', marginTop: \'-\' + parseInt((TB_HEIGHT / 2),10) + \'px\'});
};
// Set-up inner size
tb_show("Window title,"<?= $the_url; ?>&width=600&height=350",
tb_position = old_tb_position;