当Firefox最近更新到版本6时,我正在努力的网站严重破坏.
浏览到没有哈希标记的任何页面时,网站运行正常,但如果您尝试导航到带有哈希标记的页面(例如#test),或者在应用哈希标记后刷新页面,则页面会无限快速刷新.
这是一个半年前创建的Asp.Net MVC 2网站.
我们使用以下来自Microsoft的js lib https://ajax.aspnetcdn.com/ajax/4.0/1/MicrosoftAjax.js
var datetimehigh = new Date(2011,01,12,14,45,55,596);
var sDate = datetimehigh.format("dd/MM/yyyy HH:mm:ss sss");
Run Code Online (Sandbox Code Playgroud)
我无法让毫秒部分工作.请注意,该格式来自Microsoft的Mvc Ajax lib.
在我的企业环境中,我们使用了大量的JavaScript.为了简化所有这些脚本的管理,并避免命名冲突,我们采用了命名空间的javascript命名约定,基本上是:
CompanyName.ProjectName.Area.XYZ.js
要创建名称空间,我们使用以下模式:
var Company;
(function (Company) {
(function (Project) {
(function (Area) {
(function (XYZ) {
function function1(args) {
},
function function2(args) {
}
})(Area.XYZ|| (Area.XYZ = {}));
})(Project.Area || (Project.Area = {}));
var Area = Project.Area;
})(Company.Project || (Company.Project = {}));
var Project = Company.Project;
})(Company || (Company = {}));
Run Code Online (Sandbox Code Playgroud)
哪个工作正常(实际上,这是TypeScript脚本的输出).
但是,我也有一些使用Microsoft Ajax命名空间函数的脚本,因为这是失控应用程序(javascript插件)所必需的.
我用这个声明:
Type.registerNamespace('CompanyName.ProjectName.Area');
CompanyName.ProjectName.Area.ABC = function() {
}
CompanyName.ProjectName.Area.ABC.prototype = {
function1 : function (args) {
},
function2 : function (args) {
}
}
Run Code Online (Sandbox Code Playgroud)
但是调用Type.registerNamespace …
我正在使用microsoft的CDN来下载Ajax库.我在某些页面上使用SSL.
这个URL在Firefox和IE中解析得很好:
https://ajax.microsoft.com/ajax/4.0/MicrosoftAjax.js
然而,在谷歌浏览器(在我的电脑上,今天......)似乎有一个非常奇怪的回应超时:

在其他PC上,它似乎工作正常,但我知道我不是唯一一个遇到问题的人,因为我们偶尔会有一些客户抱怨某些页面超时和失败,这似乎指向同样的问题.
我正在为网站制作移动应用程序以查看您的日程安排.他们不提供任何API,也无意提供任何API.
该网站只能使用Ajax,但要伪造这些请求并刮掉我需要伪造__EVENTVALIDATION帖子字段的网站.
我对网站没有任何控制权,而且我从未使用ASP.NET或Microsoft Ajax构建任何东西.
有没有人这样做过?
我发现该__EVENTVALIDATION字段具有此模式(...符号根据请求更改字节,base64解码版本的hexdump):
d8 01 16 13 02 4f 0a ... f6 e0 84 d4 05 02 a0 3f e2 3f 03 02 3f d8 d1 d5 0c 02 bb 82 cf ec 08 02 b4 b5 99 f8 0b 02 3f 89 3f eb 04 02 d5 83 90 88 0a 02 8a db 94 90 03 02 8b cf 3f 85 08 02 93 3f b1 3f 06 02 …
我目前正在使用System.Web.Extensions的CompositeScript功能,以便合并我的JavaScript文件以减少下载时间.但是,通过包含任何脚本管理器,我的页面中包含MicrosoftAjax JavaScript代码.我不希望这发生,因为它添加了许多不需要的代码,并且它使事件处理变得复杂.
我正在寻找以下之一:
我对微软Ajax实际发现的内容感到困惑.它是否以与jquery或javascript自己的getElementById中的$运算符类似的方式返回一个控件?
如果我做
$find('someControlId')
Run Code Online (Sandbox Code Playgroud)
我会从jquery中获取相同的对象吗?
$('#someControlId')
Run Code Online (Sandbox Code Playgroud)
或Javascript
getElementById('someControlId')
Run Code Online (Sandbox Code Playgroud)
我问的原因是因为当我在某些Telerik控件的ClientId上使用$ find时,返回的对象似乎有一个类型.
那么这只是轮子的另一个实例被重新发明还是它实际上做了别的什么呢?
我正在使用ASP.NET 3.5,jQuery和RadAjax Telerik Control开发Web应用程序.页面加载时收到错误消息.即:"Microsoft JScript运行时错误:无法设置属性'control'的值:object为null或undefined".图片:
当我点击打开RadWindow然后得到相同的错误信息.并且无法打开radwindow.
图2:
我怎样才能解决这个错误.帮我..
谢谢Nahid
我有JavaScript类:
<html>
<head>
<script src="MicrosoftAjax.js" type="text/javascript"></script>
<script src="jquery-1.6.4.min.js" type="text/javascript"></script>
</head>
<body>
<script type="text/javascript">
var ClientControl = function () {
//some instance-specific code here
};
ClientControl.prototype = {
initialize: function () {
this.documentClickedDelegate = $.proxy(this.documentClicked, this);
//this.documentClickedDelegate = Function.createDelegate(this, this.documentClicked); // from MicrosoftAjax
},
bind: function() {
$(document).bind("click", this.documentClickedDelegate);
},
unbind: function() {
$(document).unbind("click", this.documentClickedDelegate);
},
documentClicked: function() {
alert("document clicked!");
}
};
var Control1 = new ClientControl();
Control1.initialize();
var Control2 = new ClientControl();
Control2.initialize();
Control1.bind();
Control2.bind();
Control1.unbind();
//Control2`s documentClickedDelegate handler, …Run Code Online (Sandbox Code Playgroud) Google免费提供流行的ajax库:
http://code.google.com/apis/ajaxlibs/
Run Code Online (Sandbox Code Playgroud)
你可以利用他们的带宽,他们的CDN,最重要的是,用户可能已经从另一个从谷歌检索他们的JS文件的网站缓存它.
只是想知道微软AJAX在任何地方都是如此吗?或者在微软网站的某个地方,我可以"窃取"主机.
我自己在像亚马逊A3这样的CDN上托管它也有什么好处.我相信我不会解决同时下载的问题,因为Internet Explorer会在脚本下载时阻止.
我对一些JavaScript代码有一个奇怪的问题(再次,我讨厌调试JS代码).我正在处理一个常规表 - 我从JSON调用填充,并添加了支持一些分页(我猜你可以调用它的2x分页),排序和一些行选择.一切都运行良好 - 但是当一行被DESELECTED(并且仅取消选择)时,我的add_navigate事件被触发两次,这导致一些不需要的数据重新加载 - 并且表明加载更加不需要.
首先,这是我的JS代码:
var customerType;
var selYear;
var selMonth;
var sdir;
var sort;
var page;
var noteId;
var hasDoneCall;
var customerId;
var customerIdChanged = false;
function initValues() {
customerType = "Publisher";
selYear = new Date().getFullYear();
selMonth = new Date().getMonth()+1;
sdir = false;
sort = "CustomerName";
page = 1;
noteId = false;
customerId = 0;
hasDoneCall = location.href.indexOf('#') > 0;
}
function flash(elm, color, duration) {
var current = elm.css('backgroundColor');
elm.animate({ backgroundColor: 'rgb(' + color + …Run Code Online (Sandbox Code Playgroud) microsoft-ajax ×11
javascript ×5
jquery ×5
asp.net ×4
ajax ×2
cdn ×2
asp.net-ajax ×1
firefox ×1
namespaces ×1
ssl ×1
telerik ×1