【发布时间】:2014-05-01 14:59:43
【问题描述】:
我在组合几个 jQuery 函数时遇到了麻烦。任何帮助表示赞赏。每个脚本单独工作,但是当我尝试将它们组合在一起时,只有一个工作(iOS 悬停),我不知道为什么。我正在为 iOS 设备上的问题做一些解决方法。我想在第一个函数中包含第二个我似乎做不到的函数。
只要注释掉第二个函数,第一个函数就可以正常工作:
$(document).ready (function(){
/**iOS phone number fix for text color**/
$(".phone #phonenumber").remove();
$(".phone").append("<div id='phonenumber2'><span class='callustext'>Call us : (800) 000-0000</span></div>");
/**iPad fixes for subnav styling at 768px**/
if(screen.width == 768){
$("#innerpage .mainnav ul li ul").css("background","transparent");
$("#innerpage .mainnav ul li.mainnavlink a:hover").css("color","#91b39e");
$("#innerpage .mainnav ul li.mainnavlinkactive a:hover").css("color","#91b39e");
$("#innerpage .mainnav ul li.mainnavlink ul li a").css("border-bottom","none");
$("#innerpage .mainnav ul li.mainnavlinkactive ul li a").css("border-bottom","none");
$("#innerpage .mainnav ul li.mainnavlink ul li a:link").css("text-transform","none").css("color","#d7d7d7");
}
});
当第一个被注释掉时,第二个函数可以正常工作:
/**iOS Hover fix**/
$(document).ready(function() {
if(navigator.platform == "iPad") {
$("a").each(function() {
var onClick; // this will be a function
var firstClick = function() {
onClick = secondClick;
return false;
};
var secondClick = function() {
onClick = firstClick;
return true;
};
onClick = firstClick;
$(this).click(function() {
return onClick();
});
});
}
});
【问题讨论】:
-
您为什么要使用文档就绪函数?你应该只使用一个。
-
这就是我想要做的,但代码不起作用。我将它们分开,看看是哪一个导致了错误。每个都可以正常工作,但是当我在第一个函数中包含 iOS 修复程序时,iOS 修复程序可以工作,但所有样式都不起作用。
-
你能在 js fiddle 中复制你的问题吗?
-
我不知道我是否可以,因为我正在使用第三方模板并为客户定制它。