通过网络图片上传到discuz的图片 手机端默认宽度224

overme2个月前 (10-17)网页设计165
如下图所示,将网站中已经存在的图片地址添加到新文章,图片存储到数据库里面是UBB img标签带长和高的属性。
PC端访问的时候,图片尺寸显示正常,但是手机端访问时,img标签中width和height被计算小了。

数据库中图片存储样式,[img=422,361]

处理分析方法:
1、手动将数据库ubb img标签的width和height属性取消,然后保存,再访问手机端内容时,图片显示就正常了。

2、discuz发布网络图片时,无论上传图片URL是否带有WWW,均为自动带上Width和Height属性。   
查看网络图片上传的代码,发现有onchange=’loadimgsize(this.value)’的js,该代码在网络图片地址输入框有变化时,会自动获取网络图片的尺寸。 小编亲测,只要是正确的图片资源URL,都能获取到width和height。

loadimgsize(this.value)相关代码

  1. function loadimgsize(imgurl, editor, p) {
  2.         var editor = !editor ? editorid : editor;
  3.         var s = new Object();
  4.         var p = !p ? ‘_image’ : p;
  5.         $(editor + p + ‘_param_2’).value = ”;
  6.         $(editor + p + ‘_param_3’).value = ”;
  7.         s.img = new Image();
  8.         s.img.src = imgurl;
  9.         s.loadCheck = function () {
  10.                 if($(editor + p + ‘_param_1’).value == imgurl) {
  11.                         if(s.img.complete) {
  12.                                 $(editor + p + ‘_param_2’).value = s.img.width ? s.img.width : ”;
  13.                                 $(editor + p + ‘_param_3’).value = s.img.height ? s.img.height : ”;
  14.                         } else {
  15.                                 setTimeout(function () {s.loadCheck();}, 100);
  16.                         }
  17.                 }
  18.         };
  19.         s.loadCheck();
  20. }

复制代码

编辑器图片尺寸带入相关的代码,在editor.js中

  1. case ‘image’:
  2.                                 var width = parseInt($(ctrlid + ‘_param_2’).value);
  3.                                 var height = parseInt($(ctrlid + ‘_param_3’).value);
  4.                                 var src = $(ctrlid + ‘_param_1’).value;
  5.                                 var style = ”;
  6.                                 if(wysiwyg) {
  7.                                         style += width ? ‘ width=’ + width : ”;
  8.                                         style += height ? ‘ _height=’ + height : ”;
  9.                                         var str = ‘<img src=’ + src + style + ‘ border=0 />’;
  10.                                         insertText(str, str.length, 0, false, sel);
  11.                                 } else {
  12.                                         style += width || height ? ‘=’ + width + ‘,’ + height : ”;
  13.                                         insertText(‘[img’ + style + ‘]’ + squarestrip(src) + ‘[/img]’, 0, 0, false, sel);
  14.                                 }
  15.                                 hideMenu(”, ‘win’);
  16.                                 $(ctrlid + ‘_param_1’).value = ”;
  17.                                 break;

复制代码

编辑器上传完网络图片,html代码中是有width和Height的。Discuz通过bbcode编码,将html转换为bbcode,其中img html网页元素,通过bbcode.js中的function imgtag(attributes)函数,将图片元素提取为[img=422,361]的样式。

3、那么数据库中同样的数据,为什么PC端图片width较大,但是手机移动端图片width=‘224’。

游客,如果您要查看本帖隐藏内容请回复

discuz imagemaxwidth来源及修改方法

相关文章


		手机访问discuz网站 自动跳转手机版域名

手机访问discuz网站 自动跳转手机版域名

1. 前往域名服务商后台,对需要添加的手机域名进行解析 比如:m.5izixue.com 2. 二级域名解析后,登录Discuz 后台,进入域名设置,填写手机域名信息 3. 以上两步设置完后,输入...

Discuz关闭前台插件的更新提示教程

Discuz论坛系统,管理员每次登录论坛,遇到后台有没有更新的应用时,都会出现更新提醒,而且关了还会继续弹出。如下图所示,后台没有暂停更新提醒的选项,用户体验不是很好: 找到文件source/m...


		如何在DISCUZ发帖页添加自定义字段

如何在DISCUZ发帖页添加自定义字段

使用DISCUZ系统仿站时,发帖时如果要新增一些参数,怎么样才能实现这样的效果呢? 下面我爱自学网分享在网络上收集到的发帖内页添加字段的方法,供参考。 第一步:使用管理员用户名密码登录DISCUZ...

Discuz密码错误15分钟后登陆解决方法

使用Discuz建网站时,会遇到这样的问题,就是当用户密码输错5次之后,Discuz就会提示“密码错误次数过多,请15分钟后登陆”。怎么解决这样的问题呢? 下面介绍一下Discuz“密码错误次数过...


		Discuz去除图片下载附件提示信息

Discuz去除图片下载附件提示信息

使用Discuz建站系统发布帖子内容时,内容有图片时。鼠标移动到图片上时,会弹出下图所示的“下载附件”的提示信息。 实际大家浏览网页时,基本上是不会主动下载图片的,只是查看而已。但是,下载附件的提...


		Discuz图片水印设置方法教程

Discuz图片水印设置方法教程

发布图片时,为了防止侵权盗用,或是为了宣传网址引流,需要添加在图片上添加水印。 在此分享Discuz系统图片水印设置方法: Discuz论坛的水印设置很简单,使用制作的水印图片覆盖系统水印地址,然...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。