簡體   English   中英

jQuery Click事件在Firefox和Safari瀏覽器中不起作用

[英]JQuery Click event is not working in Firefox and Safari Browsers

我需要在圖像上放置注釋標記,當用戶單擊每個注釋時,需要為圖像顯示相應的注釋消息。

它在Chrome瀏覽器(IOS和Android)和台式機的chrome瀏覽器中均能正常運行,但在移動和台式機的Safari和Firefox瀏覽器中均無法運行。

腳本

$('.announation').each(function(i) {
$('.announation').eq(i).on('click touchstart', function(e) {
                $(
                    '.one,.two,.three,.four,.five,.six,.seven,.eight,.nine,.ten,.ele'
                ).eq(i).css({
                    top: 0,
                    left: document.getElementById(e.srcElement.id).offsetLeft - 380
                }).show();
                document.getElementById(e.srcElement.id).innerText = "x";
                $('#' + e.srcElement.id).addClass("active");
            });
});

HTML:

   <div class="annotationsmark">
    <div class="announation" alt="one" id="oneA">+</div>
    <div class="announation" alt="two" id="twoA">+</div>
    </div>

    <div id="messages">
         <div class="one">One</div>
         <div class="two">two</div>
    </div>

我嘗試了多種方法:

沒用:

$(document.body).on( "click touchstart", ".announation", function() { });

沒用:

$('body .announation').eq(i).on('click touchstart', function(e){});

沒用:

$('.annotationsmark').on('click', '.announation', function(e) {
var i=$(this).index();
});

問題可能是由於srcElement 。Firefox和Safari可能不支持此功能。 嘗試將srcElementtarget e.srcElement.ide.target.id

或者,您可以創建一個變量並使用該變量

var target = event.target || event.srcElement;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM