2010-11-16 4 views
1

Я пытаюсь добавить скрипт к первому моему файлу XBL, но даже следующий тест не работает, любая идея почему?Почему этот скрипт не работает?

<bindings xmlns="http://www.mozilla.org/xbl" 
     xmlns:xbl="http://www.mozilla.org/xbl" 
     xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> 

<script language="javascript" type="text/javascript"><![CDATA[ 
    while(true) { 
     dump("OK"); 
    } 
]]></script> 

</bindings> 

--update

Это бесконечный цикл becouse Я хочу кусок кода, чтобы продолжать работать. Это сообщение со встроенной системой.

ответ

1

Dunno about XBL, но ваш код имеет бесконечный цикл без остановки. Такая вещь вызывает сбой JavaScript.

Добавить условие остановки или «сбой в безопасности», как нарушение после 100 000 итераций, и оно не затормозит браузер.

0

Я также не знаю о XBL, но я также думаю, что так, как вы написали это, он заблокирует выполнение. На данный момент все работает синхронно, что интерпретатор остановится на конце while, ожидая его завершения. Теперь, поскольку это бесконечный цикл, этого никогда не произойдет. Что вы можете сделать, это следующее:

window.setTimeout(function() { 
    while(true) { 
     dump("OK"); 
    } 
}, 1); 

Таким образом, вы начинаете ваш while в асинхронном виде пути. Это должно быть неблокирующим. Скажите, если это сработает.

+0

Похоже, это была проблема XBL, а не Java-один. Фактически, он никогда не вводился и никогда не печатался (с помощью метода dump()). –

Смежные вопросы