2016-08-23 31 views
0

我想創建一個網站上的幫助功能。創建一個幫助點擊功能jquery/javascript

我有一個按鈕(幫助)。一旦用戶點擊該按鈕,監聽器就會監聽用戶在頁面上點擊的位置,並且我希望提取這些元素信息。

我可以使用這些信息,然後在另一個網站上搜索。

新將jQuery和JavaScript有這個到目前爲止,不知道如何繼續或更改

$("#help").on("click", function() { 
    alert($(this).text()); 
}); 
$("#help").trigger("click"); 

請幫助我。

+0

你想要的按鈕的值? '$(this).val()' –

+0

請閱讀您的問題,至少我,我不明白任何.. –

+0

嗨,我有一個按鈕(幫助)。一旦用戶點擊該按鈕,Dom應該聽取用戶在頁面上點擊下一步的位置,並且我想要這些元素信息。不確定它是否更清楚,以及英語不是我的第一語言,所以請原諒。 –

回答

1

如果您希望使用此功能的元素較少,則可以使用此方法。

你可以保留一個局部變量,說blIsHelpActivated,點擊你的幫助按鈕時獲取真/假。當幫助按鈕被激活時,您可以將該變量設置爲true,當其被禁用時,您可以將其設置爲false。

現在您可以附加點擊頁面上的控件事件。在這一點上,你將需要檢查該變量,如果它的值爲真,則執行搜索部分。

var blIsHelpActivated = false; 

$("#help").on("click", function() { 
    // Toggle boolean to identify whether help is activated or not. 
    if(blIsHelpActivated) 
    { 
     blIsHelpActivated = false; 
    } 
    else 
    { 
     blIsHelpActivated = true; 
    } 
}); 

// Code to attach click event on elements. 
$("#yourelementid").on("click", function() { 
    if(blIsHelpActivated) 
    { 
     // Your serarching code goes here. 
    } 
}); 

Altervatively,你可以申請一個普通的單類每個元素,你可以使用下面的代碼, 代替click事件附加到每個元素。

// Code to handle click event on elements. 
$(".yourcommonclassname").on("click", function() { 
    if(blIsHelpActivated) 
    { 
     // Fetch current clicked element, by using $(this) 
     // And further search based on your logic. 
    } 
}); 
+0

感謝您的答案,不幸的是,我需要這與大多數元素動態工作,因爲這將分散在多個頁面。 –

+0

我已經更新了使用另一個基於類的方法的答案。請閱讀,這將有助於你。將類應用於可搜索的元素不會是一個問題。 –

+0

接受爲答案。 –

0

我可以爲您提供關於如何去一些這方面的暗示,但是你必須學習JS/jQuery來做到這一點:

  1. 上的幫助按鈕,點擊綁定一個onclick事件處理程序身體標籤。
  2. 檢測到單擊時,找到目標元素,並獲取目標元素的文本。 (如果不希望其他操作發生,也許可以防止默認設置)。
  3. 使用此文本調用搜索(阿賈克斯,也許如果多數民衆贊成你打算使用)。
  4. 如果要將此操作綁定一次,請從主體解除綁定click事件處理程序。或者提供一個按鈕來解除您的綁定。

請注意,如果您的元素是可能意味着很多信息的段落。

希望這會有所幫助。