JavaScript到jQuery语法的转换仍然需要帮助
JavaScript to jQuery syntax Still need help on Converting
我不能找到什么是错误的,而运行。在这里,我试图将JavaScript重写为jQuery语法。到底是什么不对?我做错了什么。
遗产>>
var cssmenuids = ["navmenu"];
function createcssmenu()
{
for (var i = 0; i < cssmenuids.length; i++)
var ultags = document.getElementById(cssmenuids[i]).getElementsByTagName("ul");
for (var t = 0; t < ultags.length; t++)
{
ultags[t].style.top = ultags[t].parentNode.offsetHeight + "-1px";
ultags[t].parentNode.onmouseover = function()
{
this.style.zIndex = 100;
this.getElementsByTagName("ul")[0].style.visibility = "visible";
this.getElementsByTagName("ul")[0].style.zIndex = 0;
}
ultags[t].parentNode.onmouseout = function()
{
this.style.zIndex = 0;
this.getElementsByTagName("ul")[0].style.visibility = "hidden";
this.getElementsByTagName("ul")[0].style.zIndex = 100;
}
}
}
}
if (window.addEventListener)
window.addEventListener("load", createcssmenu, false);
else if (window.attachEvent)
window.attachEvent("onload", createcssmenu);
jQuery语法>
$(document).ready(function ()
{
$('ul#navmenu').height = $('ul#navmenu').parent.height + "-1px";
$('ul#navmenu').parent.bind('mouseover', function ()
{
$(this).css('z-index', 100);
$(this).$('ul')[0].css("visibility", "visible");
$(this).$('ul')[0].css('z-index', 0);
});
$('ul#navmenu').parent.bind('mouseout', function ()
{
$(this).css('z-index', 0);
$(this).$('ul')[0].css("visibility", "hidden");
$(this).$('ul')[0].css('z-index', 100);
});
});
JSfiddle就是这样http://jsfiddle.net/sublay/HCajr/
构建自定义CSS水平菜单您在大多数调用中都缺少括号。
声明高度应该像这样
$('ul#navmenu').height($('ul#navmenu').parent().height() -1)
你需要使用.parent()
而不是.parent
$('ul#navmenu').parent().bind('mouseover'
下面,看起来好像您正在尝试在#navmenu
中首先使用第一个可用的ul
。当你使用[0]
时,你实际上调用.get()
,它将jQuery对象转换为javascript DOM元素。这样做将使您无法针对它运行jQuery函数。同样,对于选择器,链接不会像那样发生。此外,.css()
将接受具有键:值对的对象。
$(this).find('ul:first').css({
"visibility" : "visible",
"z-index" : 0
});
再一次,.parent()
缺少()
$('ul#navmenu').parent().bind('mouseout',
选择链又错了。
$(this).find('ul:first').css({
"visibility" : "hidden",
'z-index' : 100
});
Height是一个方法,而不是属性。你必须这样设置:
$('ul#navmenu').height($('ul#navmenu').parent.height + "-1px");
相关文章:
- 需要帮助编写在不使用toString的情况下将十进制转换为二进制的代码
- 我需要帮助在 javascript 中将 JSON 数据转换为 3 级多维数组
- Picturefill.js:需要帮助转换<图片>到<img>srcset/sites方法
- 我想在Iframe Javascript PHP的帮助下,将单个ajax上传器脚本转换为多个上传器
- 使用爆炸将php字符串转换为数组,需要在javascript中帮助操作
- 需要帮助将许多 if 语句转换为循环
- 独立 JS 游戏帮助:如何将用户输入转换为对象
- 请帮助将简短的jquery代码转换为javascript
- 在Joomla 2.5中将简单脚本转换为模块需要帮助来修复Java
- 需要帮助从原型转换为jQuery
- 需要帮助将阵列转换为多阵列
- 需要帮助将json转换为特定格式
- 将PHP BBCode REGEX转换为JavaScript,可以帮助确定问题
- 需要帮助将jQuery对象转换回字符串
- 需要帮助转换到Twitter API v1.1 - JavaScript
- 需要帮助更换扩展.jpg到.png或转换图像
- 需要一些帮助转换Js到c#
- 需要帮助转换的代码片段从PHP到Javascript
- 帮助转换内联onclick
- 需要帮助转换弃用的谷歌地图API代码到V3