簡體   English   中英

將 javascript 事件附加到使用 AJAX 加載的內容

[英]Attach javascript event to content loaded with AJAX

以前我的頁面以通常的方式加載,其中包含從數據庫中獲取的地址列表,並使用 php 腳本顯示在頁面上。 我在頁面上有一個 JavaScript 代碼,它用以下代碼混淆了電話號碼。

 <div class="telephoneNumber" data-last="'.$data_last.'" data-first="'.$first_numbers.'"> <span style="cursor:pointer;">'.$data_last.'</span> </div>

 $(document).ready(function(){ $('.telephoneNumber').toggle(function() { $(this).find('span').text(Joomla.JText._('ADVKONTENT_SHOW_TELEPHONE_NUMBER')); },function() { $(this).find('span').text( $(this).data('first') + $(this).data('last') ); }).click(); }

我已經更改了頁面的架構,現在我們使用 ajax 調用加載地址列表,並將結果注入頁面。 這些數字現在沒有被混淆。

我已經搜索了可能的解決方案,但它們似乎都涉及一些用戶操作,例如點擊。 是否可以重寫 JavaScript,它必須在 jquery 中,以便將結果加載到我們可以應用混淆腳本的頁面中?

結果證明解決方案非常簡單。 把代碼:

$('.telephoneNumber').toggle(function() {
      $(this).find('span').text(Joomla.JText._('ADVKONTENT_SHOW_TELEPHONE_NUMBER'));
},function() {
  $(this).find('span').text( $(this).data('first') + $(this).data('last') );
}).click();

在 AJAX 調用中返回的 HTML 的末尾意味着切換 function 被添加到正確的點並且電話號碼被隱藏。

暫無
暫無

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

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