web-dev-qa-db-ja.com

Thickboxメディアライブラリのiframeを拡大するには?

Thickboxメディアライブラリのiframeは私のカスタムタブを表示するのに十分な大きさではありません。リンクの最後にライブラリを指す "width = 900&height = 600"を追加しようとしましたが、運が悪かったです。インフレームサイズを変更する方法

3
Jenny

うん、追加のパラメータを追加してもうまくいかないのは不思議だ。

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() } );
});
2
brasofilo