在iframe中的链接中应用jquery

时间:2016-07-22 12:05:11

标签: jquery css

我有以下工作代码,只在iframed textarea中应用一些样式:

`$("#ctl00_m_g_f2a05a6e_efee_4fc1_9c2f_7bb3efaa99a9_ctl00_txtDescricao_iframe").contents().find("body").attr("style","font-size: 11pt !important; font-family: 'Segoe UI', 'Segoe UI Web', 'Segoe UI Symbol', 'Helvetica Neue', Arial, sans-serif !important; background-color: #FFFFFF !important; border: 0px !important;")`

我有以下非工作代码,它们应该在找到链接时添加图像:

$('#ctl00_m_g_f2a05a6e_efee_4fc1_9c2f_7bb3efaa99a9_ctl00_txtDescricao_iframe a').append('<img id="LinkImage" src="http://server/Link.png" />')

尝试将两个代码放在一起,但没有幸运。

更新

var $frameContents = $("#ctl00_m_g_f2a05a6e_efee_4fc1_9c2f_7bb3efaa99a9_ctl00_txtDescricao_iframe").contents();
//works
$frameContents.find("body").attr("style","font-size: 11pt !important; font-family: 'Segoe UI', 'Segoe UI Web', 'Segoe UI Symbol', 'Helvetica Neue', Arial, sans-serif !important; background-color: #FFFFFF !important; border: 0px !important;");
//dont work
$frameContents.find("a").append("<img id='LinkImage' src='http://server/Link.png' />");
//dont work
$frameContents.find("img").attr("style","border: 1px #EDEDED solid; padding: 8px; margin-top: 5px; margin-bottom: 20px;");

生成的代码: enter image description here

2 个答案:

答案 0 :(得分:1)

你的第一个例子是在String dir = System.getProperty("user.dir"); File filename = new File(dir, "reports.csv"); FileWriter fw = new FileWriter(filename); fw.append("User");name fw.append(','); fw.append("Count"); fw.append('\n'); fw.append("Bob"); fw.append(','); fw.append("20"); fw.append('\n'); fw.append("John"); fw.append(','); fw.append("5"); fw.append('\n'); fw.append("Mike"); fw.append(','); fw.append("2"); fw.append('\n'); fw.append("Total"); fw.append(','); fw.append("27"); fw.append('\n'); try { fw.flush(); fw.close(); URL url = new URL("file:///" + dir); FileURLConnection urlConn = (FileURLConnection) url.openConnection(); String contentType = "text/csv"; ApplicationInstance.getActive().enqueueCommand(new DownloadCommand( new FileDownload(contentType,"inline", filename.getAbsolutePath(), urlConn.getInputStream()))); } catch (Exception e) { System.out.println("Error while flushing/closing fileWriter !!!"); e.printStackTrace(); } 内搜索元素,但第二个例子是使用后代选择器,它不会起作用。

您需要使用contents()制作iframe中所有$(iframeSelector).contents().find('a')的集合

将两者仅存储引用结合到内容

<a>

答案 1 :(得分:0)

如果您的身份证明是&#39; a&#39;然后请尝试使用以下脚本。

var $a = $("#ctl00_m_g_f2a05a6e_efee_4fc1_9c2f_7bb3efaa99a9_ctl00_txtDescription_iframe").contents().find("a#id_of_a");                
$a.append('<img id="LinkImage" src="http://site.server.com/Link.png" />');