如何放大厚盒媒体库iFrame?

时间:2012-06-23 作者:Jenny

thickbox媒体库中的iframe不够大,无法显示自定义选项卡。我试图在指向库的链接末尾添加“width=900&height=600”,但没有成功。如何修改inframe大小?

1 个回复
最合适的回答,由SO网友:brasofilo 整理而成

是的,奇怪的是,添加额外的参数不起作用。。。

我知道Adminimize 确实如此
enter image description here

看看它的代码,它就是这样做的:

wp_deregister_script( \'media-upload\' );
wp_enqueue_script(
    \'media-upload\', 
    WP_PLUGIN_URL . \'/\' . FB_ADMINIMIZE_BASEFOLDER . \'/js/tb_window.js\', 
    array( \'thickbox\' )
);
这是tb_window.js 文件:

// send html to the post editor
function send_to_editor(h) {
    if ( typeof tinyMCE != \'undefined\' && ( ed = tinyMCE.activeEditor ) && !ed.isHidden() ) {
        ed.focus();
        if (tinymce.isIE)
            ed.selection.moveToBookmark(tinymce.EditorManager.activeEditor.windowManager.bookmark);

        if ( h.indexOf(\'[caption\') != -1 )
            h = ed.plugins.wpeditimage._do_shcode(h);

        ed.execCommand(\'mceInsertContent\', false, h);
    } else
        edInsertContent(edCanvas, h);

    tb_remove();
}

/**
 * new tb_window of media-uplader
 */
jQuery(function($) {
    tb_position = function() {
        var tbWindow = $(\'#TB_window\');
        var width = $(window).width();
        var H = $(window).height();
        var W = ( 1720 < width ) ? 1720 : width;

        if ( tbWindow.size() ) {
            tbWindow.width( W - 50 ).height( H - 45 );
            $(\'#TB_iframeContent\').width( W - 50 ).height( H - 75 );
            tbWindow.css({\'margin-left\': \'-\' + parseInt((( W - 50 ) / 2),10) + \'px\'});
            if ( typeof document.body.style.maxWidth != \'undefined\' )
                tbWindow.css({\'top\':\'20px\',\'margin-top\':\'0\'});
            $(\'#TB_title\').css({\'background-color\':\'#fff\',\'color\':\'#cfcfcf\'});
        };

        return $(\'a.thickbox\').each( function() {
            var href = $(this).attr(\'href\');
            if ( ! href ) return;
            href = href.replace(/&width=[0-9]+/g, \'\');
            href = href.replace(/&height=[0-9]+/g, \'\');
            $(this).attr( \'href\', href + \'&width=\' + ( W - 80 ) + \'&height=\' + ( H - 85 ) );
        });
    };

    jQuery(\'a.thickbox\').click(function(){
        if ( typeof tinyMCE != \'undefined\' &&  tinyMCE.activeEditor ) {
            tinyMCE.get(\'content\').focus();
            tinyMCE.activeEditor.windowManager.bookmark = tinyMCE.activeEditor.selection.getBookmark(\'simple\');
        }
    });

    $(window).resize( function() { tb_position() } );
});

结束

相关推荐

通过AJAX打开带有内容槽的Thickbox

我在TinyMCE编辑器中添加了一个自定义按钮,我想在单击它时打开WP的Thickbox。我怎样才能使tb_show() 函数使用ajax加载我想要的内容?// the ajax add_action(\'wp_ajax_getTheContent\', \'getTheContent\'); function getTheContent(){ echo \'weqwtegeqgr\'; // <- this should be displayed in the TB&#