This question already has an answer here:
Chrome claims simple function is undefined
(1个答案)
去年关闭。
这应该非常简单,尝试编写一个函数,单击按钮即可更改html元素的文本值。使用Chrome时,问题是我不断点击
编辑
事实证明,就像这里的人指出的那样,“translate”是保留的,因此将其重命名为
问题here是相似的,尽管我也看不到为什么会出现这种情况的实际解释。
第二次编辑
通过在
(1个答案)
去年关闭。
这应该非常简单,尝试编写一个函数,单击按钮即可更改html元素的文本值。使用Chrome时,问题是我不断点击
translate is not a function
,似乎无法访问我的功能,但是,在其他浏览器上,它按预期运行。为什么?<html lang="en">
<head>
<title>The HTML5 Herald</title>
<meta charset="utf-8">
<meta name="description" content="The HTML5 Herald">
<meta name="author" content="SitePoint">
<style src="./src/moshestyles.css"></style>
</head>
<body>
<h1 id="title"></h1>
<button onclick="translate('english')"> English </button>
<button> Hebrew </button>
<button> Spanish </button>
<script>
function translate(language) {
let myTitle = document.getElementById("title")
if (language === "english") {
myTitle.innerHTML = "Hello Welcome to Blanks App"
}
if (language === "hebrew") {
myTitle.innerHTML = "שלום הגעתם לאפליקציה של פלוני"
}
if (language === "spanish") {
myTitle.innerHTML = "Hola, bienvenidos a la aplicación Blank"
}
}
</script>
</body>
</html>
编辑
事实证明,就像这里的人指出的那样,“translate”是保留的,因此将其重命名为
translateBlurg
。尽管不幸的是,即使尝试在全局窗口对象window.translateBlurg = translateBlurg
上设置功能后,它仍然无法在codeandbox上工作,但我收到了translateBlurg
错误。问题here是相似的,尽管我也看不到为什么会出现这种情况的实际解释。
第二次编辑
通过在
window.translateBlurg = translateBlurg
窗口中声明该功能,我可以在codesandbox中运行该功能,如果该功能仅在单独的文件中时在script标记中,则该功能不起作用。 最佳答案
Chorme和Mozilla Firefox在其浏览器中使用p5 JS渲染引擎。并且translate不是Pure Javascript保留关键字,而是其p5 js内置方法。这就是为什么它有冲突。
对于引用:https://www.geeksforgeeks.org/p5-js-translate-function/
<html lang="en">
<head>
<title>The HTML5 Herald</title>
<meta charset="utf-8">
<meta name="description" content="The HTML5 Herald">
<meta name="author" content="SitePoint">
<style src="./src/moshestyles.css"></style>
</head>
<body>
<h1 id="title"></h1>
<button onClick="translate_function('english')"> English </button>
<button> Hebrew </button>
<button> Spanish </button>
<script>
function translate_function(language) {
alert('Hello');
let myTitle = document.getElementById("title")
if (language === "english") {
myTitle.innerHTML = "Hello Welcome to Moshe Finsons App"
}
if (language === "hebrew") {
myTitle.innerHTML = "שלום הגעתם לאפליקציה של משה פינסון"
}
if (language === "spanish") {
myTitle.innerHTML = "Hola, bienvenidos a la aplicación Moshe Finsons"
}
}
</script>
</body>
</html>
关于javascript - 为什么我无法在html元素中访问我的函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58028372/
10-12 06:07