Javascript 函数外部的全局变量不起作用
我试图在函数之外使用全局变量。我几乎什么都试过了,我已经读过很多没有进展的帖子了。我试图修改lightbox插件,并通过数据属性添加标签和社交链接 以下是我的HTML(捕获ID的方法):Javascript 函数外部的全局变量不起作用,javascript,jquery,html,function,global-variables,Javascript,Jquery,Html,Function,Global Variables,我试图在函数之外使用全局变量。我几乎什么都试过了,我已经读过很多没有进展的帖子了。我试图修改lightbox插件,并通过数据属性添加标签和社交链接 以下是我的HTML(捕获ID的方法): 您能否创建一个解决问题的工具,以便我们对其进行调试?JavaScript变量的作用域基于函数,因此如果您在函数内部声明变量,则在函数外部将不可用。您需要在函数之外创建一个全局变量(不推荐,这会使代码变得混乱),或者将变量值作为参数传递给其他需要它们的函数。 <a id="image-1" onclick=
您能否创建一个解决问题的工具,以便我们对其进行调试?JavaScript变量的作用域基于函数,因此如果您在函数内部声明变量,则在函数外部将不可用。您需要在函数之外创建一个全局变量(不推荐,这会使代码变得混乱),或者将变量值作为参数传递给其他需要它们的函数。
<a id="image-1" onclick="window.GetID(this.id)"
var global;
var tagList;
var facebook;
var twitter;
var gplus;
window.GetID = function (elem_id) {
console.log(elem_id);
global = document.getElementById(elem_id);
console.log(global);
tagList = global.getAttribute('data-tags');
console.log(tagList);
facebook = global.getAttribute('data-fb');
console.log(facebook);
twitter = global.getAttribute('data-tt');
console.log(twitter);
gplus = global.getAttribute('data-gplus');
console.log(gplus);
return;
}
Lightbox.prototype.build = function() {
var self = this;
$('<div id="lightboxOverlay" class="lightboxOverlay"></div><div id="lightbox" class="lightbox"><div class="lb-outerContainer"><div class="lb-container"><img class="lb-image" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" /><div class="lb-nav"><a class="lb-prev" href="" ></a><a class="lb-next" href="" ></a></div><div class="lb-loader"><a class="lb-cancel"></a></div></div></div><div class="lb-dataContainer"><div class="lb-data"><div class="lb-details"><ul class="tag-list">' + tagList + '</ul><br/><span class="lb-caption"></span><span class="lb-number"></span></div><div class="lb-closeContainer">' +
'<ul class="social-list"><li><a href="' + facebook + '"><img src="img/fb_circle_white.png" class="img-responsive"></a></li><li><a href="' + twitter + '"><img src="img/tt_circle_white.png" class="img-responsive"></a></li><li><a href="' + gplus + '"><img src="img/gplus_circle_white.png" class="img-responsive"></a></li></ul><a class="lb-close"></a></div></div></div></div>').appendTo($('body'));