我使用了一个特定的问题名称,以避免重复的问题名称,因为我发现一些海报有相同的问题,我使用了提供的解决方案,但仍然无法从另一个javascript文件调用该函数并使用alert()
来查看传递给html页面的另一个js文件的变量值。
在我的file.js文件中,我有一个函数来声明一个数组并放一个全局变量:
function MsgsArr(){
var Msgs = [
"Msg1.",
"Msg2.",
];
return Msgs;
}
var Msgs_Arr = MsgsArr();
后跟一个函数来创建随机消息并声明全局变量:
function CreateRandomMsg(){
var RandomMsg = Msgs_Arr[Math.floor(Math.random()* Msgs_Arr.length)];
return RandomMsg;
}
var Random_Msg = CreateRandomMsg();
然后它是我想要实现的最终功能,以显示基于随机消息的值:
function ValuesToCheck(){
if (Random_Msg == Msgs_Arr[0] || Random_Msg == Msgs_Arr[1]){
var check = facesDet.photos[0].tags[0].attributes.glasses.value
};
return check;
};
由于在实际情况下我有2条以上的消息,每2条消息将共享一个值,因此if语句会更长。在我的file1.html文件中,在一个函数中我想显示最终值(true或false),并使用alert(ValuesToCheck())
来调用该函数,但它不起作用。如果我在此处声明var a = facesDet.photos[0].tags[0].attributes.glasses.value;
之类的值并alert(a);
它将起作用。当我试图从另一个js文件调用该函数时,我不确定为什么事情不起作用,请帮忙。对不起,这个问题似乎很难阅读。感谢您花时间阅读它。
var facesDet = $.getJSON( APIdetect, function(facesDet) {
})
.done(function (facesDet, tid) {
var tid = facesDet.photos[0].tags[0].tid;
Load(tid);
alert(ValuesToCheck());
});
答案 0 :(得分:0)
从我可以看到的是,在ValueToCheck函数中,RandomMsg和Msgs未初始化。基本上他们不是全球性的。你需要使用Random_Msg和Msgs_Arr。
答案 1 :(得分:0)
试试这个。
css
在你的js文件中
#galerija-seperator {
background-image: url("../img/gallery-seperator.png");
width: 543px;
height: 38px;
overflow: visible;
}