我在服务器端和客户端设置元素的宽度时遇到问题。在客户端,css不会覆盖服务器端应用的css。我需要做的就是在服务器端将tss添加到td,客户端删除旧的css并应用新的css。
这是我的代码
设计页面
--packages
服务器端:
tdlblOverRideText.Attributes.Add(" class"," OverRideText");
客户机侧:
<td id="tdlblOverRideText" runat="server">
<asp:Label ID="lblOverRideText" Text="Overridden charges are denoted by green background" runat ="server" Visible ="false" BackColor="#efffff"></asp:Label>
</td>
CSS
$("#tdlblOverRideText").removeClass("OverRideText");
$("#tdlblOverRideText").addClass("OverRideTextHide");
由于它的延迟加载我无法使用
td.OverRideText {
font-style:italic;
text-align:right !important;
padding-right:1%;
}
td.OverRideTextHide {
font-style:italic;
text-align:right;
padding-right:10%;
}
因为这将在第二次加载时调用js方法而不是第一次加载页面。
答案 0 :(得分:0)
//check from 10 to 10 seconds if you have you class somwhere on dom
var mytick = setInterval(animationFunction, 1000)
function animationFunction() {
console.log("tick");
if ($(".OverRideText").length > 0)
{
$(".OverRideText").removeClass("OverRideText").addClass("OverRideTextHide");
//here you can destroy the loop if you want
//clearTimeout(mytick)
}
}
var step=0;
setInterval(function() {
step++;
console.log("lazy load");
$('#wrapper').append('<div class="OverRideText">Text ' + step + '</div>');
}, 1000);
.OverRideText {
font-style:italic;
text-align:right !important;
padding-right:10%;
}
.OverRideTextHide {
font-style:italic;
text-align:right;
padding-right:50%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div id="wrapper">
<div class="OverRideText">Text 0</div>
</div>
我一直在使用javascript间隔执行来检查是否可以找到具有class ='OverRideText'的元素;为什么不id?因为插入延迟加载相同的id在html中是不正确的。另一个延迟加载技巧(模拟延迟加载)是以10秒的间隔插入该类的元素。
现在回到主要问题,你的懒人负载最多用ajax执行,ajax get有成功事件,在成功事件中你可以执行你喜欢的动画。