Раздражает this.refresh () не является функцией в Firefox - PullRequest
0 голосов
/ 05 февраля 2011

Вот решение моей проблемы. Я могу отобразить поле, ввести новое значение, снова щелкнуть поле и скрыть поле с новым значением. Консоль ошибок Firefox каждый раз жалуется, что this.refresh () не является функцией.

Как избавиться от this.refresh () не является ошибкой функции, чтобы я мог очистить консоль Firefox и искать ошибки, которые действительно вызывают проблемы?

var gotIt='no'

function askName(x)
 {if(gotIt=='yes')
   {response=this.name
    characters[x].setName(response)
    gotIt='no'
   }
  else
   {gotIt='no'
    this.name=characters[x].name
    response="<input onClick=_setName(this.value) size=10 type=text value="+this.name+">"
    characters[x].setName(response)
   }
 }
function _setName(x)
 {this.name=x
  this.refresh()
  gotIt='yes'
 }

1 Ответ

2 голосов
/ 05 февраля 2011

Почти все в вашем коде неверно, следующий код делает то, что вам нужно. Если вы хотите понять JavaScript, вы должны стремиться.

enter image description here

<!doctype html>

<html>
    <head>
        <script>
            window.onload = function () {
                var input = document.createElement ("input");
                var span = document.getElementsByTagName ("span")[0];

                input.addEventListener ("blur", function () {
                    span.innerHTML = this.value;
                }, false);

                span.addEventListener ("click", function () {
                    if (this.getElementsByTagName ("input").length === 0) {
                        input.value = this.textContent;

                        this.innerHTML = "";

                        this.appendChild (input);

                        input.focus ();
                    }
                }, false);
            }
        </script>

        <style>
            span {
                font-weight: bold;
            }
        </style>

        <title></title>
    </head>

    <body>
        <span>Braveheart</span>
    </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...