Threepenny Gui - вставка файлов Javascript в заголовок HTML и неудачная реализация <script>

Я использую Threepenny GUI для реализации внешнего интерфейса графической базы данных. Чтобы сэкономить время, я хочу использовать уже созданные Javascript JQuery-ориентированные файлы кода на странице отображения графического интерфейса. Я использую браузер Firefox на Mac для его возможностей проверки HTML-кода.

При попытке включить элемент, связанный с холстом, возникла проблема.

Уже не написана функция для включения источника Javascript в отображаемый заголовок HTML-страницы.

Я обратился к этому, прочитав некоторый источник в Трипенни, чтобы определить, как создать свою собственную рутину. Заимствуя определение функции для addStyleSheet в качестве модели, код был скопирован в исходный код для его проверки:

UI.addStyleSheet rootWindow "gui_fmiq.css"
-- the following code does the above and works in this context --
el <- mkElement "link"
    # set (attr "rel" ) "stylesheet"
    # set (attr "type") "text/css"
    # set (attr "href") ("/static/css/gui_fmiq.css")
getHead rootWindow #+ [element el]

В соответствии с HTML-инспектором Firefox в заголовке была установлена ​​копия локального файла CSS, поэтому эта проблема была решена.

Однако, добавление файла jquery.js аналогичным образом привело к тому, что отображение HTML стало совершенно белым. Я не знаю, является ли это взаимодействием с версией Threequny jquery.js или нет. Тем не менее JQuery требуется кодом JavaScript.

Главная проблема:

Используя подобный стиль кода, я создал последовательность функций для создания примитива сценария HTML для помещения источника JavaScript в заголовок HTML:

inc_sketchScript <- mkElement "script"
    # set (attr "src") "/static/sketch.js"
getHead rootWindow
    #+ [
        element inc_sketchScript
       ]

Включенный файл javascript не отображается в HTML-инспекторе Firefox, но терминал запуска Threepenny показывает его в ответе GET 200 на веб-сервере.

Использование очень похожего кода в более позднем определении canvas для использования включенного JavaScript:

    canvas <- UI.canvas
    # set UI.height canvasHeight
    # set UI.width  canvasWidth
    # set style [("border", "solid black 1px"), ("background", "#eee")]
    # set UI.id_ "simple_sketch"
    #+ [
        mkElement "script"
            # set (attr "type") "text/javascript"
            # set text "$(function() {$('simple_sketch').sketch(); });"
       ]

Ожидаемый HTML-код сценария вообще не отображается в HTML-инспекторе Firefox. Сам холст показывает на экране, но ничего не делает.

Этот вопрос для создателя Threepenny, Генриха Апфельма.

Заранее спасибо за любую помощь в этом!

0 ответов

Другие вопросы по тегам