0
我試圖將一個特定功能綁定到Gmail收件箱中的較新/較舊按鈕。將功能綁定到Gmail中的較舊/較新按鈕
這兩個按鈕的HTML如下:
<div id=":i0" class="T-I J-J5-Ji amD T-I-awG T-I-ax7 T-I-Js-IF L3" role="button" tabindex="0" data-tooltip="Newer" aria-label="Newer" style="-webkit-user-select: none;"><span class="amF"> </span><img class="amI T-I-J3" src="images/cleardot.gif" alt=""></div>
<div id=":hs" class="T-I J-J5-Ji amD T-I-awG T-I-ax7 T-I-Js-Gs L3" role="button" tabindex="0" data-tooltip="Older" aria-label="Older" style="-webkit-user-select: none;"><span class="amF"> </span><img class="amJ T-I-J3" src="images/cleardot.gif" alt=""></div>
我嘗試了各種方法,如:
$('span.Di div.T-I').one('click', function(){
console.log('Hey');
});
或
$('span.Di').find('div.T-I').addClass('.class-name');
$('.class-name').click(function(){
console.log('hey');
});
現在,這個工作當我點擊第一次按鈕,但是在隨後的點擊中,它不起作用。
有什麼建議嗎?
嘿丹尼爾,我意識到錯字。不過,這兩種方法都不起作用。在第二種方法中,類僅在第一次添加,而不是在第二次單擊後添加。我認爲這可能與Gmail的加載部分有關。所以我必須在視圖加載完成後調用函數。 – Newtt
我猜測Gmail正在重新渲染這些按鈕,並且由於點擊偵聽器只會被添加一次,所以它不會再次觸發。嘗試類似'$('body')。on('click','span.Di div.T-I',Fn);' – abraham