我想在Wordpress中有条件地加载一个弹出窗口。弹出窗口在插件Popup Maker中配置,并具有“popmake-2503”的CSS类。有条件地在jQuery中打开WordPress的Popup Maker popup
我已经创建了我的主题的functions.php的一个功能,它加载有条件的脚本:
// open popup
function open_popup() {
if(is_user_logged_in() && is_page('checkout'))
{
wp_enqueue_script(
'open-popup',
get_stylesheet_directory_uri() . '/open-popup.js',
array('jquery')
);
}
}
add_action('wp_footer', 'open_popup');
在开popup.js文件,我有以下几点:
jQuery(document).ready(function($) {
alert ('running');
$('#popmake-2503').popmake('open');
});
我已经阅读了API,但仍然不能弹出窗口,并且在控制台中没有显示错误。基本的javascript警报起作用。
谢谢。
EDIT1:周围的其他方法的工作原理,即,
$('#popmake-2503').popmake('close');
作品有效地关闭弹出它被自动加载后(如在弹出机构在WP管理员定义)。
谢谢。有什么改变了,是的。弹出窗口仍然不显示,但我从控制台得到以下错误:“Uncaught TypeError:无法读取未定义的属性'元'(它来自popup-maker-site.min.js插件文件)... – BMM
由于他们的API,我相信我真的需要使用“#”来通过jQuery触发弹出窗口。 – BMM
当然,如果你有一个id给你的元素,更好的方法是使用它进行选择。重要的是要正确选择项目。但是因为在你的问题中你没有提到选定的元素有一个id,而是显示类,我决定你没有正确选择需要的元素。你可以尝试调试你的代码,确保你通过放置'console来正确选择元素。日志($('#popmake-2503'),'test');'。如果你可以把你的代码放在某个地方,我可以试着帮助你更多:) – pgk