Javascript似乎不适用于移动设备
我的(WordPress)网站上有一个文本切换选项: 如果你点击右边的红色“信息”链接,它下面的文本就会打开。问题是它在手机(iPhone4)上似乎不起作用。请参阅附加的屏幕截图。在我看来,javascript根本没有加载,或者根本不工作 html链接:Javascript似乎不适用于移动设备,javascript,wordpress,mobile,toggle,Javascript,Wordpress,Mobile,Toggle,我的(WordPress)网站上有一个文本切换选项: 如果你点击右边的红色“信息”链接,它下面的文本就会打开。问题是它在手机(iPhone4)上似乎不起作用。请参阅附加的屏幕截图。在我看来,javascript根本没有加载,或者根本不工作 html链接: <div id="<?php the_ID(); ?>" class="projectTitel"> <?php the_title( sprintf( '<h2 class="entry-title
<div id="<?php the_ID(); ?>" class="projectTitel">
<?php the_title( sprintf( '<h2 class="entry-title"><button rel="bookmark" class="show">', esc_url( get_permalink() ) ), '<div class="info">Info ↓</div><div class="close_info">X</div></button></h2>' ); ?>
</div>
javascript代码:
<script type="text/javascript">
var divs = document.getElementsByClassName("projectTitel");
[...divs].forEach(someDiv => someDiv.addEventListener("click", handler));
// by default, all Inhoud divs are hidden
hideElements("Inhoud");
hideElements("close_info");
jQuery('.info').show();
function handler(event) {
// get the clicked project's index :
var projectIndex = getClickedProjectIndex(event);
// toggle the right Inhoud div :
toggleDiv(document.getElementsByClassName("Inhoud")[projectIndex]);
toggleDiv(document.getElementsByClassName("close_info")[projectIndex]);
toggleDiv(document.getElementsByClassName("info")[projectIndex]);
}
// hide all elements that have the provided class name
function hideElements(className) {
var elements = document.getElementsByClassName(className);
[...elements].forEach(element => element.style.display = "none");
}
function getClickedProjectIndex(event) {
var elements = document.getElementsByClassName("projectTitel");
var projectIndex = 0;
[...elements].forEach((element, index) => {
if (element.id == event.currentTarget.id) {
projectIndex = index;
}
});
return projectIndex;
}
function toggleDiv(element) {
if (element.style.display === 'none') {
element.style.display = 'block';
} else {
element.style.display = 'none';
}
}
</script>
var divs=document.getElementsByClassName(“projectTitel”);
[…divs].forEach(someDiv=>someDiv.addEventListener(“单击”,处理程序));
//默认情况下,所有Inhoud div都是隐藏的
隐藏物(“隐藏物”);
隐藏元素(“关闭信息”);
jQuery('.info').show();
函数处理程序(事件){
//获取已单击项目的索引:
var projectIndex=getClickedProjectIndex(事件);
//在HOUD div中切换右侧:
toggleDiv(document.getElementsByClassName(“Inhoud”)[projectIndex]);
toggleDiv(document.getElementsByClassName(“close_info”)[projectIndex]);
toggleDiv(document.getElementsByClassName(“info”)[projectIndex]);
}
//隐藏具有提供的类名的所有元素
函数隐藏元素(类名){
var elements=document.getElementsByClassName(className);
[…elements].forEach(element=>element.style.display=“无”);
}
函数getClickedProjectIndex(事件){
var elements=document.getElementsByClassName(“projectTitel”);
var projectIndex=0;
[…元素].forEach((元素,索引)=>{
if(element.id==event.currentTarget.id){
projectIndex=指数;
}
});
返回项目索引;
}
函数切换div(元素){
如果(element.style.display=='none'){
element.style.display='block';
}否则{
element.style.display='none';
}
}
替换“数组.从(divs)”中的“[…divs]”
请在此处添加相关代码,而不是指向非站点资源的链接。我在Safari中发现此erorr:TypeError:undefined不是关于以下行的函数:[…divs].forEach(someDiv=>someDiv.addEventListener(“单击”,处理程序));