可以使用多个事件处理程序。
frame.on(\'open\',function() {
// Do something
});
frame.on(\'close\',function() {
// Do something
});
frame.on(\'select\',function() {
// Do something
});
在哪里
frame
是对
wp.media()
frame = wp.media();
frame.on(\'select\',function() {
// Do something
});
完整示例
脚本en作为依赖项与jQuery和media editor一起排队。
function media_script_enqueue() {
wp_enqueue_script( \'media-script\', get_template_directory_uri() . \'/js/media-script.js\', array( \'jquery\', \'media-editor\' ), \'\', true );
}
add_action( \'wp_enqueue_scripts\', \'media_script_enqueue\' ); // Front-end
add_action( \'admin_enqueue_scripts\', \'media_script_enqueue\' ); // Back-end
脚本包含:
;( function( $ ) {
var frame = wp.media({
multiple: true
});
$(".media").on("click", function(e) {
frame.open();
e.preventDefault();
});
frame.on(\'open\', function() {
console.log("Open");
});
frame.on(\'close\', function() {
console.log("Close");
});
frame.on(\'select\', function() {
console.log("Select");
var selection = frame.state().get(\'selection\');
selection.each(function(attachment) {
console.log(attachment.id);
});
});
} )( jQuery );
由类名为的按钮触发的窗口
media
<button class="media">Media</button>
媒体javascript依赖项通过函数排队。
<?php wp_enqueue_media(array(\'post\' => get_the_ID())); ?>