次を使用して新しいウィンドウを開きたい:
window.open('<myfile>.pdf','my window','resizable,scrollbars');
新しいウィンドウが開きますが、ウィンドウのタイトルが「私のウィンドウ」として取得されません。何が間違っているのでしょうか?
ドメインが同じ場合、新しいウィンドウのタイトルを変更できます
<script type="text/javascript">
var w = window.open('http://localhost:4885/UMS2/Default.aspx');
w.document.title = 'testing';
</script>
ここに私の解決策があります、これをチェックしてください:
var myWindow = window.open('<myfile>.pdf','my window','resizable,scrollbars');
myWindow.document.write('<title>My PDF File Title</title>');
私が助けてくれることを願っています。
これは私がやったことです:
_ <script type="text/javascript">
function OpenWindow() {
var pdf = '<%= "PDFs/13.7/" + ddlLinkValidation.SelectedValue.ToString() + ".pdf" %>';
var win = window.open('','UATRpt', 'menubar=0,location=0,toolbar=0,resizable=1,status=1,scrollbars=1');
if(win.document) {
win.document.write('<html><head><title>Your Report Title</title></head><body height="100%" width="100%"><iframe src="' + pdf + '" height="100%" width="100%"></iframe></body></html>');
}
return true;
}
</script>
_
hTML本文内<U><A style="cursor: pointer;" onclick="OpenWindow()">Open in New Window</a></U>
JavaScriptの「タイトル」引数は、JavaScriptの内部で使用される変数です。ウィンドウの上部に表示される実際のタイトルは、通常HTML <title>
タグですが、PDFを表示しているため、そのタグはありません。
新しいウィンドウにURLとしてファイル(PDFなど)がある場合、ページに「head」タグがないの可能性があります。
タイトルを変更/追加するには、前に1つ追加する必要があります。
jQuery:
var w = window.open('/path/to/your/file.pdf');// or any url
$(w.document).find('html').append('<head><title>your title</title></head>');
ネイティブjs:
var w = window.open('/path/to/your/file.pdf');// or any url
w.document.getElementsByTagName('html')[0]
.appendChild(document.createElement('head'))
.appendChild(document.createElement('title'))
.appendChild(document.createTextNode('your title'));
ページのロードに時間がかかる場合は、onloadウォッチを追加してから、タイムアウトを追加できます。私の場合、次のようにコーディングする必要がありました。
var w = window.open('/path/to/your/file.pdf');// or any url
w.onload = function(){
setTimeout(function(){
$(w.document).find('html').append('<head><title>your title</title></head>');
}, 500);
} // quite ugly hu !? but it works for me.
新しく開いたウィンドウでPDFのタイトルを変更するには
function titlepath(path,name){
//In this path defined as your pdf url and name (your pdf name)
var prntWin = window.open();
prntWin.document.write("<html><head><title>"+name+"</title></head><body>"
+ '<embed width="100%" height="100%" name="plugin" src="'+ path+ '" '
+ 'type="application/pdf" internalinstanceid="21"></body></html>');
prntWin.document.close();
}
Onclick
<a onclick="titlepath('your url','what title you want')">pdf</a>
以下のコードは、Mozilla Firefoxで動作します。IE 11およびGoogle Chrome。
var winUrl = 'target URL that needs to open in new window';
var _newWindow = window.open(winUrl, "_newWindow");
_newWindow.document.title = "My New Title";
私の場合、それが機能する唯一の方法は、次のように setTimeout を使用することでした:
var mapWin = window.open('', '_blank', ''); // Opens a popup
setWindowTitle(mapWin) // Starts checking
function setWindowTitle(mapWin)
{
if(mapWin.document) // If loaded
{
mapWin.document.title = "Oil Field Map";
}
else // If not loaded yet
{
setTimeout(setWindowTitle, 10); // Recheck again every 10 ms
}
}