5

私が取り組んでいるサイトに検索ボックスがあり、人々が探している検索語を追跡したいと考えています。

検索ボックスは誰かが入力しているものを自動推測して検索するため、クリック イベントはありません。

コンソールでは、ぼかしが発生したときに必要な textContent は、次の .textContent です。

myVar = document.querySelectorAll('.twitter-typeahead > span')[2]

ただし、ここで返される値は、誰かが実際に何かを入力した場合にのみ null ではありません。そのため、ぼかしイベントを添付するのが良いようです。別のフォーラムで誰かの助けを借りて、コンソールでこれまでに取得しました:

myVar.addEventListener('blur', function(){dataLayer.push({'event':'bla'})})

コンソールにこれをすべて入力した後、dataLayer にプッシュされている値が表示されないため、blur イベントが機能していないと思われます (dataLayer.push 関数とは対照的に)。

問題の検索ボックスのあるページはこちらです。

検索ボックスのフォーカスを外した人にぼかしイベントを添付するにはどうすればよいですか?

4

2 に答える 2

9

blurスパンではなく、リスナーを検索ボックスに追加する必要があります。

searchbox = document.getElementById('searchboxID');
searchbox.addEventListener('blur', function() {
    var input = this.value;
    // Do whatever you want with the input
});
于 2014-08-12T18:24:56.227 に答える