Проблемы при взаимодействии Quartz Composition с JavaScript в браузере - PullRequest
0 голосов
/ 15 марта 2011

Я пытаюсь встроить простую Кварцевую Композицию в веб-страницу с помощью тега embed. Согласно документации Apple и справке API , это должно быть очень простой задачей, но выбор встроенного объекта в JavaScript не раскрывает API.

Вот моя страница:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Quartz Test</title>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script type="text/javascript" src="script.js"></script>
</head>
<body>
<div id="main">
    <h1>Quartz Test</h1>
    <hr/>
    <div id="content">
        <embed type="application/x-quartzcomposer"
        src="lineTest.qtz"
        id="myComp"
        width="300px"
        height="150px"
        opaque="false"/>
    </div>
</div>
</body>
</html>

и вот мой JS:

var composition;

$(document).ready(function() {
    composition = $('#myComposiiton');
});

При такой простой настройке я смогу написать что-то вроде ...

composition.loaded() //should be true

или

composition.inputKeys() //should return Array

Вместо этого все, что я получаю, - это ошибки в отладчике, такие как TypeError: Результат выражения 'композиции.loaded' [undefined] не является функцией .

Кто-нибудь проходил через это или предлагал, как я могу его отладить?

Спасибо

1 Ответ

1 голос
/ 26 мая 2011

Вы пробовали очевидную композицию [0] .loaded ()?

Функция jQuery $ возвращает массив элементов DOM, которые соответствуют вашему выбору, даже если существует только один элемент, который соответствует.

...