不看不知道,一看吓一跳,Atlas中有些Bug还真让人无语。

  阅读了Atlas的代码才发现,Atlas中有些Bug真是让人无话可说。除去以前提到过的有些类成员在重载时奇怪的代码之外,现在在阅读IEDragDropManager时也发现了点有趣的Bug。

按照我的计划,接下来会写一系列文章来讨论浏览器中的Drag & Drop以及深入分析一下在Atlas中Drag & Drop支持代码的行为以及使用与扩展的做法,但是在做阅读和分析Atlas代码之后,发现在IEDragDropManager中有趣的bug。简单的说,大家可以先查看一下在AtlasUIDragDrop.js中,IEDragDropManager类的以下几个方法:

function dragEnterHandler()
function dragLeaveHandler()
function dragOverHandler()
function dropHandler()

在这些方法里都有这样的代码:

this._dropTarget.xxxx

非常有趣的是,this._dropTarget从来没有被赋过值!而被拖动的HTML元素倒有一个_dropTarget,是在registerDropTarget时被赋与的,可惜也从来没有被使用过。很显然,Atlas开发人员把它们混淆了。如果代码被执行到了这里……一个无法避免的Error将被抛出。

不过一般来说,大家在使用时不用担心,因为那些Bug真的很难被触发。首先,那些方法一般在使用时就几乎不太会被执行到,其次如果要执行到这句代码还要通过一个比较特殊的条件判断。要得到一个触发Bug的例子可能的确需要在看过代码之后有针对性地写出。具体的做法我会在接下来的文章中进行解释。有兴趣的朋友可以先尝试一下,比如尝试一下Dflying兄在《使用ASP.NET Atlas实现拖放(Drag & Drop)效果(下)》,上面提到的那些方法,都没有被触发过。不过Atlas中的Drag & Drop模型,依旧是非常完整的一个。

希望以后能有更多的心得体会和大家分享。

转载于:https://my.oschina.net/abcijkxyz/blog/721445

对不起,您提供的信息似乎有些混乱,我无法完全理解您想要了解的内容。关于静态路由的配置,通常是指在路由器上手动设置路由规则,以便正确地转发数据包到特定的目的网络。而在描述出现了"使用吓一跳"和"AP准确配置",这部分内容不太清晰,可能是输入错误或者缺少上下文信息。正确的静态路由配置应该包括目标网络、子网掩码、下一跳地址等信息。 如果您是想了解如何在某台设备上配置静态路由到网络192.168.12.0/24,通过下一跳地址为192.168.2.2的话,具体的命令或步骤会根据使用的设备(如Cisco路由器)和操作系统而有所不同。一般步骤如下: 1. 登录到设备的命令行界面(CLI)。 2. 进入到全局配置模式。 3. 使用静态路由配置命令,并指定目标网络、子网掩码和下一跳IP地址。 以Cisco设备为例,配置命令可能如下: ``` Router> enable Router# configure terminal Router(config)# ip route 192.168.12.0 255.255.255.0 192.168.2.2 ``` 这里的命令解释如下: - `Router>` 表示设备的命令行提示符。 - `enable` 是进入特权模式的命令。 - `configure terminal` 是进入全局配置模式的命令。 - `ip route` 是配置静态路由的命令。 - `192.168.12.0` 是目标网络地址。 - `255.255.255.0` 是子网掩码,在这里表示/24的子网掩码。 - `192.168.2.2` 是下一跳地址,即数据包通过这个地址可以到达目标网络。 请注意,实际操作需要根据具体的网络设备和操作系统进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值