用另一个调用一个javascript函数

时间:2014-08-30 18:11:28

标签: javascript php wordpress

好的,这是基本的想法。我想让一个javascript激活另一个。这似乎是一个相当直接的想法。我有我的第一个js文件将变量设置为1,我的第二个js文件以if语句开头,如果该变量等于1则触发。不幸的是,我不能为我的生活弄清楚如何创建一个可由两个文件读取和修改的JS变量。在wordpress堆栈交换站点的早期帖子中,我读到你可以通过在wp_head中声明一个变量来做到这一点。不幸的是,虽然functions.php文件运行正常,但我似乎无法访问我创建的变量。我试过wp_head.variable,它没有定义。我只尝试了未定义的变量名称。我已经尝试过定义它,但这只是创建了该变量的本地版本。

如果有更简单的方法来关闭第二个脚本以响应第一个脚本请告诉我。它们需要位于不同的文件中,因为每个文件都需要本地化不同的php变量。是的,第一个脚本的动作正确触发。

functions.php片段:

function my_js_variables(){ ?>
<script type="text/javascript">
var activate = 0;
</script>
<?php
}

add_action ( 'wp_head', 'my_js_variables' );

第一个脚本:

jQuery('#grab').click(function()
{
    jQuery.ajax({
      url: my_ajax_script.ajaxurl,
      data: ({action : 'get_my_option'}),
      datatype: "json",
      success: function(json){
      activate = 1;
      }
        })
      })

第二个脚本:

if (activate == 1)
{
      alert('so far so good');
};

1 个答案:

答案 0 :(得分:0)

我采用触发和绑定事件的方法:

第一个脚本

jQuery('#grab').click(function()
{
    jQuery.ajax({
      url: my_ajax_script.ajaxurl,
      data: ({action : 'get_my_option'}),
      datatype: "json",
      success: function(json){
        $(document).trigger('custom_event');
      }
    })
})

第二个脚本

$(document).bind('custom_event', function() {
    alert('so far so good');
}