JAVASCRIPT меняется по клику - PullRequest
0 голосов
/ 07 июня 2010

Мне нужна помощь в изменении этого события javascript onclick, чтобы просто загрузить данные на страницу загрузки страницы ... Желательно не использовать тело на метке загрузки ...

Так что, очевидно, я бы заранее установил var для term внутри термина сценария, а не исключая событие click ..

Надеюсь, что это имеет смысл

<p><a id="keywordlink" href="?term=wombats">Get keywords for wombats</a></p>
<script type="text/javascript" src="keywords.js"></script>
<script type="text/javascript">
  var x = document.getElementById('keywordlink');
  if(x){
    x.onclick = function(){
      var term = this.href.split('=')[1];
      this.innerHTML += ' (loading...)';
      KEYWORDS.get(term,seed);
      return false;
    }
  }
  function seed(o){
    var div = document.createElement('div');
    var head = document.createElement('h2');
    head.innerHTML = 'Keywords for '+o.term;
    div.appendChild(head);
    var p = document.createElement('p');
    p.innerHTML = o.toplist;
    div.appendChild(p);
    var head = document.createElement('h3');
    head.innerHTML = 'Details:';
    div.appendChild(head);
    var list = document.createElement('ol');
    for(var i=0,j=o.keywords.length;i<j;i++){
      var li = document.createElement('li');
      li.innerHTML = o.keywords[i].term + '('+o.keywords[i].amount+')';
      list.appendChild(li);
    }
    div.appendChild(list);
    x.parentNode.replaceChild(div,x);
  }
</script>

Ответы [ 2 ]

1 голос
/ 07 июня 2010

измените это:

if(x){
    x.onclick = function(){
      var term = this.href.split('=')[1];
      this.innerHTML += ' (loading...)';
      KEYWORDS.get(term,seed);
      return false;
    }
  }

на что-то вроде этого:

function loadSomething(){
  var term = x.href.split('=')[1];
  x.innerHTML += ' (loading...)';
  KEYWORDS.get(term,seed);
  return false;
}
loadSomething();

вы можете оставить его там, где он есть, но для удобства чтения поместите его ниже функции семени.

Вы должны использовать что-то вроде onload или document.ready, но в качестве альтернативы вы можете переместить весь файл скрипта вниз страницы

0 голосов
/ 07 июня 2010

Не устанавливайте обработчики событий таким образом. Используйте addEventListener и (для IE) attachEvent.

...