我在init.js中有这个功能
function bodyresize() {
var factor = ($window.width() * $window.height()) / (1440 * 900);
$body.css('font-size', Math.min(Math.max(Math.floor(factor * settings.sizeFactor), settings.sizeMin), settings.sizeMax) + 'pt');
$main.height(panels[activePanelId].outerHeight());
$body._reposition2();
};
$body._reposition2 = function() {
if (skel.vars.isTouch && (window.orientation == 0 || window.orientation == 180))
$wrapper.css('padding-top', Math.max((($window.height() - (panels[activePanelId].outerHeight() + $footer.outerHeight())) / 2) - $nav.height(), 30) + 'px');
else
$wrapper.css('padding-top', ((($window.height() - panels[firstPanelId].height()) / 2) - $nav.height()) + 'px');
};
现在我需要从我的game1脚本,当我按下按钮时,上面的代码运行
在我的index.html中我有这个:
<head>
<script src="js/init.js" type="text/javascript"></script>
</head>
和我有这个按钮
<button id="button" onclick="bodyresize()">Click Me test</button>
我认为按钮有问题,因为他无法找到bodyresize,但我无法找到原因
答案 0 :(得分:1)
这与你原来的方法有点不同,但我会在Javascript中处理整个事情。它可能看起来像这样:
document.getElementById('button').onclick = function(e) {
// your code
}
修改强>
这是元素本身定义的onclick
按钮的another example。它看起来与你原来的相似。
这两种方法在技术上都是正确的,但如果在onclick
中定义init.js
函数,则无法在另一页中重复使用该文件,因为onclick
函数会当找不到同名的另一个组件(button
)时抛出错误。解决此问题的解决方案是定义一个新文件。
希望这能帮到你!