我在主题选项中使用上传媒体选项和Tiny编辑器。现在当我在javascript以下使用时
jQuery(document).ready(function() {
jQuery('.st_upload_button').click(function() {
targetfield = jQuery(this).prev('.upload-url');
tb_show('', 'media-upload.php?type=image&TB_iframe=true');
return false;
});
window.send_to_editor = function(html) {
imgurl = jQuery('img',html).attr('src');
jQuery(targetfield).val(imgurl);
tb_remove();
}
});
允许上传图片并从上传按钮插入网址(参见带输入和黑色上传按钮的图片)
但使用上面的javascript Tiny编辑器允许上传但停止将图像插入编辑器。
我通过禁用javascript交叉检查,而且Tiny编辑器工作正常。所以我认为javascript中有问题,但无法理解错误以及如何解决。
答案 0 :(得分:2)
在jquery中没有问题,只需要在这里注册你的脚本时有一些是示例代码
function st_add_init()
{
$screen = get_current_screen();
$file_dir = get_template_directory_uri();
wp_enqueue_style("stCss", $file_dir."/font/theme-options.css", false, "1.0", "all");
wp_enqueue_script("stScript", $file_dir."/js/theme-options.js", false, "1.0"); wp_register_script('my-upload', get_bloginfo( 'stylesheet_directory' ) .'/js/my-script.js', array('jquery','media-upload','thickbox'));
if ($screen->id =='appearance_page_st-settings')
{
wp_enqueue_script('thickbox');
wp_enqueue_script('media-upload');
wp_enqueue_script('my-upload');
wp_enqueue_style('thickbox');
}
}
add_action('admin_enqueue_scripts', 'st_add_init');
get_current_screen(); 函数检索主题选项页面的ID
' appearance_page_st-settings' 是我的选项页面的ID,您的选项会有所不同
if($ screen-> id ==' appearance_page_st-settings')将匹配ID以确定该页面是否为主题选项页面,如果为true,则脚本将被注册,因此避免与管理脚本发生任何冲突