<div id="fb-button-container" style="width:20%; margin:auto;" data-ng-show="!isLoggedIn" data-ng-click="checkFacebookLoginState()">
<div class="fb-login-button" data-max-rows="1" data-size="medium" data-show-faces="false" data-auto-logout-link="false">Login with Facebook</div><!--data-ng-disabled="!facebookReady"-->
</div>
我有这个代码。我正在使用Facebook登录插件。
我遇到的问题是,如果我在 fb-login-button 上直接输入数据-ng-点击,则不会触发点击事件(可能是因为默认情况下覆盖Facebook的点击事件)。
所以我把它放在父母身上。但是这样我必须从按钮点击外部来触发它。
我想知道:有没有办法让孩子(fb-login-button)的点击事件&#34; backpropagation&#34; 转移到父母(fb-button-container)?
提前致谢
答案 0 :(得分:1)
一种相当愚蠢的方法是使用父内部的另一个元素,它将充当主触发器。在checkFacebookLoginState()内部,监听click事件,并在需要时再执行一次单击隐藏的fb登录按钮。
<div id="fb-button-container" style="width:20%; margin:auto;" data-ng-show="!isLoggedIn">
<div class="fb-login-check" data-ng-click="checkFacebookLoginState()"></div>
<div class="fb-login-button hidden" data-max-rows="1" data-size="medium" data-show-faces="false" data-auto-logout-link="false">Login with Facebook</div>
</div>
&#13;
答案 1 :(得分:1)
你可以通过给它一个更高的z-index来设置一个div的Facebook按钮的大小和形状,这样他们就会点击你的div而不是Facebook按钮。
这不是您问题的真正答案,而是您问题的解决方案。