Почему не определяет функцию
Имеются 2 страницы, где на одной надо автоматический грузить функцию, а на другой при клике на кнопку.
(function($) { "use strict"; // Here IF/Else // Click btn. $(".getInfoByClick").click(function() { // Call function getInfoByClick(); }); // getInfoByClick var getInfoByClick = (function(){ alert("Need call this function") }()); })(jQuery); На какой странице как грузить, определяю отдельно (Here IF/Else). Проблема с вызовом функции через клик кнопку. Uncaught TypeError: getInfoByClick is not a function Как вариант сделал так, на сколько правильно и в чём отличие между пред. кодом: (function($) { "use strict"; // Here IF/Else // Click btn. $(".getInfoByClick").click(function() { // Call function getInfoByClick(); }); // getInfoByClick function getInfoByClick(){ alert("Need call this function") }; })(jQuery); Спасибо. |
У вас на 15 строке сразу и вызывается функция, так что getInfoByClick равно undefined
var getInfoByClick = function() { alert("Need call this function") }; |
Но даже если на 15 строке undefined, функция ведь уже подгрузилась в страницу, т.е. при клике ведь она должна вызывается?
И что делать? Как я второй вариант писал так? Грубо если сравнить мои прим. кода отличие я верно понимаю: "var getInfoByClick = (function(){}())" - функцию обворачиваю в переменную. "function getInfoByClick(){}" - просто определяю функцию |
Цитата:
getInfoByClick = undefined |
Часовой пояс GMT +3, время: 12:23. |