Индекс или размер отрицателен или больше, чем допустимая сумма. «Code:» 1 [Break On This Error] return selector.options [selector.selectedIndex] .value; - PullRequest
0 голосов
/ 12 апреля 2011

Индекс или размер отрицателен или больше, чем допустимое количество "code:" 1 [Break On This Error] return selector.options [selector.selectedIndex] .value; Линия 38 Я продолжаю получать сообщение об ошибке и не знаю почему. вот код js

http://pastebin.com/H66NTvrU

А вот и мой шаблон кода

        <form id="selector">
            <select id="book" onchange="initChapSelector();"></select>
            <select id="chap" onchange="initPageSelector();"></select>
            <select id="page" onchange="initDisplay();"></select>
            <select id="scale" onchange="setScale(this.options[this.selectedIndex].value);">
                <option value="">Original Width</option>
                <option value="100%">Page Width</option>
                <option value="50%">Half Page</option>
            </select>
            <a href="javascript:void(0)" onclick="alert('Arrow up/down: scroll\nArrow left/right: prev/next page'); return false;">Help</a>
        </form>

Я очень новичок в кодировании, поэтому, пожалуйста, прости меня, если что-то из перечисленного неверно Было бы хорошо, если бы кто-то мог помочь мне в этом, поскольку я, кажется, сидел здесь целую вечность, пытаясь решить это, Уверен, кто-то заметит ошибку через несколько секунд, лол ...

Большое спасибо

1 Ответ

1 голос
/ 12 апреля 2011

Я скопировал ваш код в jsfiddle, здесь: http://jsfiddle.net/dMcyg/

Я сразу же получаю сообщение об ошибке при изменении значения списка выбора "setScale не определено". Я могу видеть, что это так, но в скрипте есть много синтаксических проблем, поэтому я предполагаю, что есть проблема синтаксического анализа, достаточно серьезная, что она никогда не заходит так далеко.

У вас есть функции, определенные во внутренних скобках, что недопустимо. Есть много пропущенных точек с запятой (хотя большинство браузеров, кроме IE, пропускают их).

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

Оу - jsLint жалуется, что "интерфейс - зарезервированное слово" для вашей переменной interface. Раньше я никогда не слышал о ключевом слове «interface» в Javascript, поэтому я не уверен, что это такое, но я изменил его, чтобы jsLint продолжал синтаксический анализ.

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