3

The iframe in thickbox media library is not big enough to display my custom tab. I tried to add "width=900&height=600" at the end of the link that pointing to the library, but no luck. How can I modify the inframe size?

1 Answer 1

2

Yep, it's curious that adding the extra parameters doesn't works...

I know that Adminimize does that.
enter image description here

Looking at its code, that's what it does:

wp_deregister_script( 'media-upload' );
wp_enqueue_script(
    'media-upload', 
    WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/tb_window.js', 
    array( 'thickbox' )
);

And this is the tb_window.js file:

// 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() } );
});
0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.