2009-10-23 2 views
-1

Может кто-нибудь, пожалуйста, посмотрите на эту функцию javascript и скажите, пожалуйста, что я делаю неправильно? Я хочу передать 4 переменных. Я знаю очень мало javascript.Javascript function help

Спасибо.

function chg(back,front,left,right) 
    { 
     return test("div#post", "#" + "back", "#" + "front", left, right); 
    } 

Вот файл OnLoad

window.onload = function() { 
    function chg(back,front,left,right) 
    { 
     return test("div#post", "#" + "back", "#" + "front", "left", "right"); 
    } 
} 
+0

Вам необходимо предоставить дополнительную информацию. В частности, что вы пытаетесь сделать, каков ожидаемый результат, что вы получаете вместо этого. –

+0

Я бы предложил объяснить, что именно вы пытаетесь выполнить (откуда идет переменная, куда они идут и что вы пытаетесь сделать с ними), предложите сообщение об ошибке (или любое другое сообщение/результат, который предлагает вы делаете это неправильно) и ссылку на демонстрационную страницу, если это вообще возможно. –

+0

Я хочу использовать эту функцию для динамического изменения моих значений. Это часть события onload и находится в отдельном файле. Я использую встроенный тег скрипта в файле для вызова этого загружаемого файла. – Jim

ответ

2

Ничто не синтаксически неправильно, что я могу видеть.

  • Возможно, вы имели в виду back вместо "back"? (то же, что и спереди)
  • Есть ли функция test, определенная во внешней области? Что он возвращает?
  • Включены ли 4 аргумента?
  • Можете ли вы предоставить больше кода?
+0

Да, есть тестовая функция в другом файле. Вот как я сейчас работаю. Эта тестовая функция находится в файле, который обрабатывает все события onLoad. Причина, по которой я хочу включить эту функцию, заключается в том, что я могу динамически изменять цвета и дополнения. Теперь мне интересно, не потому ли это, что я не могу этого сделать. Это возможно? Кстати: спасибо за помощь. – Jim

+2

вы не получите окончательного ответа, не публикуя фактический реальный код. –

+0

Я отправил его выше – Jim

0

Вы ничего не сделали синтаксически. Однако два ваших входных аргумента (back и front) никогда не используются - вы помещаете слова «назад» и «впереди» в строковый литерал, поэтому эти аргументы никогда не используются. Функционально невозможно сказать. Что такое test()? Это другая функция, объявленная в другом месте? Если это так, было бы полезно увидеть это тоже.

+0

Привет, Rex, спасибо за помощь. Позвольте мне спросить об этом. Может ли эта функция использоваться динамически в ситуации onload? Я хочу изменить эти значения на лету. – Jim

+0

Трудно сказать с этим количеством контекста, но не должно быть причин, почему бы и нет. –

1

Во всех смыслах и целях мой код и ваш код выполняют то же самое. Может быть, это поможет?

function chg(back,front,left,right) 
    { 
     var result; 

     //Pass left & right to the test function 
     result = test("div#post", "#back", "#front", left, right); 

     //Do something with back & front.... 
     //What?... I have no idea. 

     return result; 
    } 
+0

Спасибо Джимми. Я вообще не парень javascript, и, возможно, проблема заключается в «обратной» и «передней» переменных, но, насколько я думал, тестовая функция принимает их.Я тоже не вижу необходимости в возвращении. Я ошибаюсь? – Jim

+0

Как я уже сказал, мой код и ваш код делают то же самое. Если вы не видите необходимости возврата, вы должны взглянуть на свой код на второй раз. Попробуйте сказать нам, что вы пытаетесь сделать. Например: «Я хочу динамически устанавливать высоту, ширину и положение div onload» –