项目中,模板中的菜单是jQuery控制的,在Angularjs中就运行不到了,因为菜单项是ng-repeat之后的。

如html
<ul id="main-menu">
<li class="">
<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Menu1</a>
<ul class="sub-menu">
<li ><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >--1</a></li>
<li ><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >--2</a></li>
</ul>
</li>
<li class="">
<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Menu2</a>
<ul class="sub-menu">
<li ><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >--1</a></li>
<li ><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >--2</a></li>
</ul>
</li>
</ul>
Jquery给第一级a链接绑定事件代码像:
$(function(){
$("#main-menu li a").click(function(e){
if ($(this).next().hasClass('sub-menu') === false) {
return;
}
console.log("click");
});
});
因为我之前看过文档说,Angularjs的Controller不处理Dom的操作,所以一直在找方法怎么处理和jQuery 一样绑定a的点击事件,在看了jQuery not working with ng-repeat results之后,原来可以将所有链接的单击事件,放在一个指令中。如果在Controller中绑定了ng-click,并操作了Dom元素,就不太规范了,使用指令会好一些。
html
<ul id="main-menu">
<li class="">
<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" toggle-main-menu>Menu1</a>
<ul class="sub-menu">
<li ><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >--1</a></li>
<li ><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >--2</a></li>
</ul>
</li>
<li class="">
<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" toggle-main-menu>Menu2</a>
<ul class="sub-menu">
<li ><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >--1</a></li>
<li ><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >--2</a></li>
</ul>
</li>
</ul>
javascript:
.directive("toggleMainMenu", function() {
return {
restrict: "A",
link: function(scope, elem, attrs) {
$(elem).click(function() {
if($(this).next().hasClass('sub-menu') === false) {
return;
}
console.log("click");
});
}
}
});
原来指令是这样使用的。以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# angularjs
# 指令绑定
# 绑定事件
# 事件指令
# Angularjs 事件指令详细整理
# AngularJS实现自定义指令与控制器数据交互的方法示例
# angularjs之$timeout指令详解
# 深究AngularJS如何获取input的焦点(自定义指令)
# Angularjs中使用轮播图指令swiper
# angularjs 指令实现自定义滚动条效果
# 绑定
# 放在
# 看了
# 不太
# 是这样
# 作了
# 定了
# 中就
# 会好
# 单击
# 大家多多
# 单是
# 怎么处理
# 菜单项
# 文档
# 因为我
# 中的菜
# lt
# ul
# xhtml
相关文章:
如何选择域名并搭建高效网站?
成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?
制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?
高防服务器租用如何选择配置与防御等级?
太平洋网站制作公司,网络用语太平洋是什么意思?
Java解压缩zip - 解压缩多个文件或文件夹实例
如何在西部数码注册域名并快速搭建网站?
php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】
小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建
建站168自助建站系统:快速模板定制与SEO优化指南
建站主机选购指南:核心配置优化与品牌推荐方案
如何高效搭建专业期货交易平台网站?
建站之星在线版空间:自助建站+智能模板一键生成方案
表情包在线制作网站免费,表情包怎么弄?
如何通过cPanel快速搭建网站?
如何制作网站标识牌,动态网站如何制作(教程)?
相册网站制作软件,图片上的网址怎么复制?
保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?
岳西云建站教程与模板下载_一站式快速建站系统操作指南
企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?
已有域名和空间如何快速搭建网站?
网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?
如何快速打造个性化非模板自助建站?
如何在云指建站中生成FTP站点?
如何在建站之星网店版论坛获取技术支持?
网页设计与网站制作内容,怎样注册网站?
南京做网站制作公司,南京哈发网络有限公司,公司怎么样,做网页美工DIV+CSS待遇怎么样?
Android滚轮选择时间控件使用详解
电商网站制作价格怎么算,网上拍卖流程以及规则?
如何在IIS中配置站点IP、端口及主机头?
视频网站app制作软件,有什么好的视频聊天网站或者软件?
建站之星如何配置系统实现高效建站?
智能起名网站制作软件有哪些,制作logo的软件?
如何快速生成专业多端适配建站电话?
c# Task.ConfigureAwait(true) 在什么场景下是必须的
建站主机如何选?高性价比方案全解析
建站DNS解析失败?如何正确配置域名服务器?
海南网站制作公司有哪些,海口网是哪家的?
如何快速搭建高效WAP手机网站?
如何用好域名打造高点击率的自主建站?
建站之星IIS配置教程:代码生成技巧与站点搭建指南
山东云建站价格为何差异显著?
如何快速搭建安全的FTP站点?
微信h5制作网站有哪些,免费微信H5页面制作工具?
建站主机解析:虚拟主机配置与服务器选择指南
三星网站视频制作教程下载,三星w23网页如何全屏?
广平建站公司哪家专业可靠?如何选择?
php条件判断怎么写_ifelse和switchcase的使用区别【对比】
网站制作报价单模板图片,小松挖机官方网站报价?
建站之星安装路径如何正确选择及配置?
*请认真填写需求信息,我们会在24小时内与您取得联系。