jQuery from iFrame



我使用jquery.autoellipsis-1.0.10.js来制作2行省略号。页面是用经典的ASP制作的。初始页面加载省略号效果很好。我们有分页,这是通过一个非常古老的方法完成的,页面在iframe中运行,然后重写div标签的innerHTML。但是,当通过iframe加载时,省略号不起作用。

下面是来自IFRAME的代码:

<%
pstrOut = "<div class=""block"">Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit</div>"
%>
<html>
<head>
<script language="javascript" type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script language="javascript" type="text/javascript" src="/js/jquery.autoellipsis-1.0.10.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function(){
  $("div.block").ellipsis();
});
</script>
<style type="text/css">
div.block {
  width:<%=nVideoWidth%>px;  
  max-height:30px;
  min-height:15px;
}
</style>
<script language="javascript" type="text/javascript">
var jstr = '';
<%=cUtil.ToJS(pstrOut,"jstr") %>
top.parent.document.getElementById('TargetDIV').innerHTML = jstr;
</script>
</head>

cUtil。ToJS:

<%     
Function toJS(val,valVar)
Dim pstrOut
If isNull(val) Then
  Exit Function
End If
If valVar = "" Then
  valVar = "jstr"
End If
Select Case valVar
  Case "-1"
    pstrOut = Replace(val, "'", "'")
pstrOut = Replace(pstrOut, ";", ";")
pstrOut = Replace(pstrOut, ",", ",")
pstrOut = Replace(pstrOut,vbLF,vbCr)
pstrOut = Replace(pstrOut, vbCr, "n';")
toJS = pstrOut
  Case "0"
pstrOut = Replace(val, "'", "")
pstrOut = Replace(pstrOut, ";", "")
pstrOut = Replace(pstrOut, ",", " ")
pstrOut = Replace(pstrOut,vbLF,vbCr)
pstrOut = Replace(pstrOut, vbCr, "")
toJS = pstrOut
  Case Else
pstrOut = Replace(val, "'", "'")
pstrOut = Replace(pstrOut, ";", ";")
pstrOut = Replace(pstrOut, ",", ",")
pstrOut = Replace(pstrOut,vbLF,vbCr)
pstrOut = Replace(pstrOut,vbCrLf,vbCr)
pstrOut = Replace(pstrOut, vbCr, "n';" & vbCr & valVar & " += '")
toJS = valVar & " += '" & pstrOut & "n';" & vbCr
  End Select
End Function

一旦iframe运行并输出到父页,我需要省略号在父页上工作。有什么想法吗,因为我对jQuery几乎一无所知。如有任何帮助,我将不胜感激。

谢谢!

试试这个:

<script language="javascript" type="text/javascript">
var jstr = '';
<%=cUtil.ToJS(pstrOut,"jstr") %>
$("#TargetDIV",parent.document).html(jstr).ellipsis();
</script>

最新更新