У меня проблема с запуском функции JS при изменении значения или атрибута rel
тега anchor
, anchor
выглядит следующим образом:
<a id="ThemeImageLink1" runat="server" href="javascript:void(0)" class="preview"
rel="../Images/templateChooser/preview/preview1.jpg">
Я изменяю значение тега rel из codebehind:
HtmlAnchor imageLink = (HtmlAnchor)getControlId(counter, "ThemeImageLink");
imageLink.Attributes.Add("rel","../Images/templateChooser/preview/preview2.jpg");
getControlId
использует FindControl()
для извлечения элемента управления со страницы aspx
.
Если я закомментирую часть кода, где я изменяю rel
значение атрибута, jQuery работает нормально. Тогда скрипт jQuery использует значение по умолчанию rel
Вот часть jQuery, где я вызываю функцию:
$(document).ready(function () {
imagePreview();
});
И реализация функций:
this.imagePreview = function(){
xOffset = 10;
yOffset = 30;
$("a.preview").hover(function(e){
this.t = this.title;
this.title = "";
var c = (this.t != "") ? "<br/>" + this.t : "";
$("body").append("<p id='preview'><img src='"+ this.rel +"' alt='Image preview' />"+ c +"</p>");
$("#preview")
.css("top",(e.pageY - xOffset) + "px")
.css("left",(e.pageX + yOffset) + "px")
.fadeIn("fast");
},
function(){
this.title = this.t;
$("#preview").remove();
});
$("a.preview").mousemove(function(e){
$("#preview")
.css("top",(e.pageY - xOffset) + "px")
.css("left",(e.pageX + yOffset) + "px");
});
};
У меня также есть другие функции JavaScript, которые работают нормально, но эта проблема вызывает у меня проблемы.
Как вы думаете, мне следует вызывать JS для метода PageLoad?