将参数传递给另一个函数并传递给 innerHTML
Pass a Parameter to Another Function and Into innerHTML
我已经构建了自己的灯箱,并且运行良好。我构建了自己的框架,因为我需要它没有框架,并且在我正在构建的游戏中也能很好地工作。但是,我 运行 遇到了一个问题,我相当确定它很简单,但事实证明这对我来说相当麻烦。我遇到的问题是采用参数 "slideName" 并将其传递给 "fillRightButton()" 函数。
var createSlidebox = function(cancelButton, bannerImg, slideName) {
fillRightButton("nextSlide",slideName);
};
这是该函数的一部分:
var fillRightButton = function(rightButtonType, rightDestination) {
if (rightButtonType === "nextSlide") {
document.getElementById("lightbox_fright").innerHTML = '<a onclick="changeSlide(' + rightDestination + ')">Next</a>';
}
}
"fillRightButton()"函数在直接调用时表现良好,如果直接传入参数,这段代码有效:
var createSlidebox = function(cancelButton, bannerImg, slideName) {
fillRightButton("nextSlide", "mySlideName");
};
但是,没有引号它呈现为:
<a onclick="changeSlide([object Object])">Next</a>
有一个 "Uncaught SyntaxError: Unexpected identifier" JS 错误。我将如何解决这个问题?谢谢!
在函数调用
中使用数据属性存储使用 jQuery 的对象
var fillRightButton = function(rightButtonType, rightDestination) {
if (rightButtonType === "nextSlide") {
document.getElementById("lightbox_fright").innerHTML = '';
// document.getElementById("lightbox_fright").innerHTML = '<a onclick="changeSlide( $(this).data('dest') )">Next</a>';
var a = document.createElement('a');
a['data-dest'] = rightDestination;
a.onclick=function(){changeSlide( this['data-dest']); }
a.innerHTML = 'Next';
document.getElementById("lightbox_fright").appendChild(a);
//document.getElementById('lightbox_fright > a').data({'dest':rightDestination});
}
}
如果尚未包含,请使用 jQuery
PS 已更新 w/o jQuery 请试一试如果有效请告诉我,建议使用 jQuery 虽然
我已经构建了自己的灯箱,并且运行良好。我构建了自己的框架,因为我需要它没有框架,并且在我正在构建的游戏中也能很好地工作。但是,我 运行 遇到了一个问题,我相当确定它很简单,但事实证明这对我来说相当麻烦。我遇到的问题是采用参数 "slideName" 并将其传递给 "fillRightButton()" 函数。
var createSlidebox = function(cancelButton, bannerImg, slideName) {
fillRightButton("nextSlide",slideName);
};
这是该函数的一部分:
var fillRightButton = function(rightButtonType, rightDestination) {
if (rightButtonType === "nextSlide") {
document.getElementById("lightbox_fright").innerHTML = '<a onclick="changeSlide(' + rightDestination + ')">Next</a>';
}
}
"fillRightButton()"函数在直接调用时表现良好,如果直接传入参数,这段代码有效:
var createSlidebox = function(cancelButton, bannerImg, slideName) {
fillRightButton("nextSlide", "mySlideName");
};
但是,没有引号它呈现为:
<a onclick="changeSlide([object Object])">Next</a>
有一个 "Uncaught SyntaxError: Unexpected identifier" JS 错误。我将如何解决这个问题?谢谢!
在函数调用
中使用数据属性存储使用 jQuery 的对象var fillRightButton = function(rightButtonType, rightDestination) {
if (rightButtonType === "nextSlide") {
document.getElementById("lightbox_fright").innerHTML = '';
// document.getElementById("lightbox_fright").innerHTML = '<a onclick="changeSlide( $(this).data('dest') )">Next</a>';
var a = document.createElement('a');
a['data-dest'] = rightDestination;
a.onclick=function(){changeSlide( this['data-dest']); }
a.innerHTML = 'Next';
document.getElementById("lightbox_fright").appendChild(a);
//document.getElementById('lightbox_fright > a').data({'dest':rightDestination});
}
}
如果尚未包含,请使用 jQuery
PS 已更新 w/o jQuery 请试一试如果有效请告诉我,建议使用 jQuery 虽然