Javascript/jQuery设置未知元素的全局变量
编辑 删除。这个问题不是基于代码的,但是全局变量的帮助非常受欢迎,我确实学到了很多 如何设置未知元素的全局变量 我需要在单击元素时向代码中的其余函数传递一个变量。我知道我有点接近。我只是需要一点帮助。 我的代码如下。仅当单击某个元素时,我才尝试将我的“sampleName”和“samplePath”传递给“loadPage”函数Javascript/jQuery设置未知元素的全局变量,javascript,jquery,global-variables,Javascript,Jquery,Global Variables,编辑 删除。这个问题不是基于代码的,但是全局变量的帮助非常受欢迎,我确实学到了很多 如何设置未知元素的全局变量 我需要在单击元素时向代码中的其余函数传递一个变量。我知道我有点接近。我只是需要一点帮助。 我的代码如下。仅当单击某个元素时,我才尝试将我的“sampleName”和“samplePath”传递给“loadPage”函数 (function ($) { //Original Variables //var sampleName = 'Book1' // samplePath = '
(function ($) {
//Original Variables
//var sampleName = 'Book1'
// samplePath = '/Book1/'
//Want dynamic variables
var sampleName;
var samplePath;
$(document).on("click", ".sampleDiv", function (event) {
sampleName = $(this).attr("sample") || '';
samplePath = 'Books/' + sampleName;
//alert(sampleName);
// alert(samplePath);
});//End click
function loadPage(page) {
var img = $('<img />');
img.load(function () {
var container = $('.Book .p' + page);
img.css({ width: '100%', height: '100%' });
img.appendTo($('.Book .p' + page));
container.find('.loader').remove();
});
img.attr('src', samplePath + 'pages/' + page + '.jpg');
}
})(jQuery);
我试图做的是使这些变量更具动态性,并在
<div sample='Book1'></div>
单击变量(主要是“Book1”部分)进行更改。每本“书”都有不同的编号(第1册、第2册、第3册等)。我想根据点击哪个变量来设置变量。我的DIV上的attr(“示例”)将确定书号。因此,当单击DIV时,attr(“sample”)将是变量的值
希望这有助于我解释更多问题。只需将所有全局变量置于函数之外即可
var sampleName;
var samplePath;
(function ($) {
$(document).on("click", ".sample", function (event) {
sampleName = $(this).attr("sample") || '';
samplePath = 'Books/' + sampleName;
//alert(sampleName);
// alert(samplePath);
});//End click
如果变量是全局变量,则必须在(函数($)外部声明{ …例如:
还有什么不起作用?对我来说。问题实际上在“loadPage”函数中。你会看到img.src。samplePath没有从我的单击传递到loadPage函数。至少我无法让它在那里发出警报。
var sampleName;
var samplePath;
(function ($) {
$(document).on("click", ".sample", function (event) {
sampleName = $(this).attr("sample") || '';
samplePath = 'Books/' + sampleName;
//alert(sampleName);
// alert(samplePath);
});//End click
var sampleName;
var samplePath;
(function ($) {
...
})(jQuery);