脚本中出现 window.open() access is denied - 拒绝访问 情况一则及分析_基础知识
也许这个状况有的朋友已经知道了,但我还是把自己的分析思路写下来给其他的朋友参考。
昨天把blog页面另存在,在本地调试和改blog皮肤。
简介:
我想在onload页面加载完时用脚本控制,把Run HTML code, CopyCode, SaveCode这三个按扭动态的添加到css类名为code_textarea的多行文本框里。
状况描述:
在非服务器端(即没有在本地服务器下调试)按扭已经全部出现在多行文本框下,但在调试脚本时(点击Run HTML code),出现拒绝访问...服务器下调试正常。
分析:
查看代码,发现是这里脚本出错,代码如下:
function fnRunHtmlCode(obj)
{
//try {
//if (typeof(obj)=="string") obj=document.getElementById(obj);
var wnd = window.open('', "_blank", '');
wnd.document.open('text/html', 'replace');
wnd.document.writeln(obj.value);
wnd.document.close();
//} catch(ex) { alert(ex.message) };
};
用Mozilla打开,运行正则,并且脚本没有任何错误。弄了将半个小时,我把其余的代码都删了,在Mozilla中把动态生成的div和button代码copy出来察看,把在IE上动态加载的button拷贝到dw里看,没有异常。包括把上面的function放在另外一个页面上运行,依然是正常,并把这个function单独改成了window.open('','','')还是拒绝访问。
既然是拒绝访问,一般情况下肯定是跨域了,但本地调试,没有加其它的代码呀,怎么跨域?百思不得其解。
于是想先放上blog再说了。奇怪的是放上服务器又可以了,于是我把本地的页面放到本地服务器下运行,也是正常。这回就更蹊跷了。说是IE bug?不成立,因为服务器可以运行。代码问题?不成立,因为在其它页面正常,而且没有涉及到其它的代码。只是funtion,说明肯定是下载的这页有问题,难道CSDN blog输出的HTML页有document.domain类似的代码吗?
分步调试成功:
把原先所有的代码不需要的地方全部去掉(包括Html)。最终简化如下:
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
运行依然如故。
于是再把DTD去掉。
运行正常~~~知道原因所在了。
这句害我找了半天的原因,总算刨它出来了,证明这句另存为的代码在IE下是会有跨域存在的,而Mozilla对这句没有任何反应。
后记:
对于另存为出现的注释代码
放在HTML任何部分,在本地非服务器端调试都会有拒绝访问的错误,而Mozilla不会。如:
nbsp;HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

1. Ouvrez les paramètres dans Windows 11. Vous pouvez utiliser le raccourci Win+I ou toute autre méthode. 2. Accédez à la section Applications et cliquez sur Applications et fonctionnalités. 3. Recherchez l'application que vous souhaitez empêcher de s'exécuter en arrière-plan. Cliquez sur le bouton à trois points et sélectionnez Options avancées. 4. Recherchez la section [Autorisations d'application en arrière-plan] et sélectionnez la valeur souhaitée. Par défaut, Windows 11 définit le mode d'optimisation de l'alimentation. Il permet à Windows de gérer le fonctionnement des applications en arrière-plan. Par exemple, une fois que vous avez activé le mode d'économie de batterie pour préserver la batterie, le système fermera automatiquement toutes les applications. 5. Sélectionnez [Jamais] pour empêcher l'application de s'exécuter en arrière-plan. Veuillez noter que si vous remarquez que le programme ne vous envoie pas de notifications, ne parvient pas à mettre à jour les données, etc., vous pouvez

Deepseek ne peut pas convertir les fichiers directement en PDF. Selon le type de fichier, vous pouvez utiliser différentes méthodes: documents communs (Word, Excel, PowerPoint): utilisez Microsoft Office, LibreOffice et d'autres logiciels à exporter sous forme de PDF. Image: Enregistrer sous le nom de PDF à l'aide d'une visionneuse d'image ou d'un logiciel de traitement d'image. Pages Web: Utilisez la fonction "Imprimer en PDF" du navigateur ou l'outil Web dédié à PDF. Formats peu communs: trouvez le bon convertisseur et convertissez-le en PDF. Il est crucial de choisir les bons outils et d'élaborer un plan basé sur la situation réelle.

DAO (Data Access Object) en Java est utilisé pour séparer le code d'application et la couche de persistance. Ses avantages incluent : Séparation : Indépendante de la logique de l'application, ce qui facilite sa modification. Encapsulation : masquez les détails d'accès à la base de données et simplifiez l'interaction avec la base de données. Évolutivité : facilement extensible pour prendre en charge de nouvelles bases de données ou technologies de persistance. Avec les DAO, les applications peuvent appeler des méthodes pour effectuer des opérations de base de données telles que la création, la lecture, la mise à jour et la suppression d'entités sans traiter directement les détails de la base de données.

Le message « Impossible d'autoriser l'accès à la caméra et au microphone » s'affiche-t-il lorsque vous essayez d'utiliser l'application ? En règle générale, vous accordez des autorisations de caméra et de microphone à des personnes spécifiques en fonction de leurs besoins. Cependant, si vous refusez l'autorisation, la caméra et le microphone ne fonctionneront pas et afficheront ce message d'erreur à la place. Résoudre ce problème est très simple et vous pouvez le faire en une minute ou deux. Correctif 1 – Fournir les autorisations de caméra et de microphone Vous pouvez fournir les autorisations de caméra et de microphone nécessaires directement dans les paramètres. Étape 1 – Accédez à l'onglet Paramètres. Étape 2 – Ouvrez le panneau Confidentialité et sécurité. Étape 3 – Activez-y l’autorisation « Caméra ». Étape 4 – À l’intérieur, vous trouverez une liste des applications qui ont demandé l’autorisation d’accéder à l’appareil photo de votre téléphone. Étape 5 – Ouvrez la « Appareil photo » de l'application spécifiée

En Java, un « champ » est un membre de données dans une classe ou une interface utilisée pour stocker des données ou un état. Les propriétés du champ incluent : le type (peut être n'importe quel type de données Java), les droits d'accès, statique (appartient à une classe plutôt qu'à une instance), final (immuable) et transitoire (non sérialisé). Le champ est utilisé pour stocker les informations d'état d'une classe ou d'une interface, telles que le stockage des données d'objet et la maintenance de l'état de l'objet.

Les plans d'exécution de procédures stockées Oracle fournissent des informations d'exécution, notamment les chemins d'accès, le nombre estimé de lignes, l'ordre de jointure et les coûts. Pour afficher le plan d'exécution, exécutez la commande EXPLAIN PLAN et recherchez la section « Plan d'exécution ». Le plan d'exécution contient un en-tête et un corps, affichant en détail l'ID, le type d'opération, le nombre de lignes, le coût, le chemin d'accès, les conditions de filtre, les tables et index impliqués et la séquence de connexion s'il existe une connexion.

Le mécanisme de réflexion Java permet aux programmes de modifier dynamiquement le comportement des classes sans modifier le code source. En exploitant une classe via l'objet Class, vous pouvez créer des instances via newInstance(), modifier les valeurs des champs privés, appeler des méthodes privées, etc. La réflexion doit toutefois être utilisée avec prudence, car elle peut entraîner un comportement inattendu et des problèmes de sécurité, et entraîner une surcharge en termes de performances.

À quoi ressemble un module de mémoire d'ordinateur ? Voici un aperçu de la carte graphique et du module de mémoire de l'ordinateur. La carte graphique indépendante de l'ordinateur est insérée dans l'emplacement de la carte graphique, avec un ventilateur, et le module de mémoire se trouve à l'intérieur de l'emplacement du module de mémoire sur la carte mère de l'ordinateur, en forme de parallélépipède rectangle vert. Les modules de mémoire pour ordinateur portable sont différents des modules de mémoire pour ordinateur de bureau et ils ne peuvent pas être utilisés de manière interchangeable. Différence d'apparence 1 : la mémoire de l'ordinateur de bureau est mince, avec une longueur de 13 à 14 cm. 2 : La mémoire de l'ordinateur portable est plus courte, environ cinq centimètres. La mémoire est le pont de l'ordinateur, responsable de l'échange de données entre le processeur et le matériel tel que le disque dur, la carte mère et la carte graphique. Le cercle rouge sur le chemin est la clé mémoire, à côté du ventilateur du processeur et branché sur la clé mémoire. Regardez, une clé USB d'ordinateur ressemble à ceci. Utilisez un tournevis pour ouvrir le capot de l'ordinateur de bureau. Le cercle rouge au milieu correspond au module de mémoire. Qu'est-ce qu'une clé USB ?
