Помогите мне понять, как написать функцию в jQuery - PullRequest
0 голосов
/ 10 июля 2011

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

$(document).ready(function(){
    function doStuff( bar )
    {
        // Match all <A/> links with a title tag and use it as the content (default).
        $('.graph').qtip({
            content: {
                text: 'Loading...', // The text to use whilst the AJAX request is loading
                ajax: {
                    url: '/foo/' + bar , // URL to the local file
                    type: 'GET', // POST or GET
                    data: {} // Data to pass along with your request
                }
            },
            show: {
                solo: "true",
                delay: 100,
                event: "click",
                adjust : {screen : true}
            },
        });
    }
});

Этот код прекрасно работает, но только если я удалю

function doStuff( bar )
{
}

Причина, по которой я хочу обернуть эти вещи в функцию, заключается в том, что я могу передать параметр. Как я уже сказал, я могу работать с jQuery, но я далеко не мастер. Любая помощь или совет / критика моей стратегии приветствуется.

Редактировать

Здесь я вызываю функцию. Спасибо за помощь тоже!

<a class="graph" title="a_link_title" href="#" onclick="doStuff('281'); return false;"> a link </a>

Ответы [ 2 ]

3 голосов
/ 10 июля 2011

Первое, что нужно

эта функция не должна находиться внутри документа..

Вы можете сделать две вещи.вызовите функцию или удалите функцию и выйдите из document.ready и вызовите ее внутри document.ready

$(document).ready(function(){
   doStuff(bar) // pass the value and call it like this
});

    function doStuff( bar )
    {
        // Match all <A/> links with a title tag and use it as the content (default).
        $('.graph').qtip({
            content: {
                text: 'Loading...', // The text to use whilst the AJAX request is loading
                ajax: {
                    url: '/foo/' + bar , // URL to the local file
                    type: 'GET', // POST or GET
                    data: {} // Data to pass along with your request
                }
            },
            show: {
                solo: "true",
                delay: 100,
                event: "click",
                adjust : {screen : true}
            },
        });
    }
0 голосов
/ 10 июля 2011

Быстрое исправление:

$(document).ready(function() {
    function doStuff(bar) {
        // your code
    }

    doStuff(123); // might help to actually call your function! :-)

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