检查这个javascript制作模因

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检查这个javascript制作模因相关的知识,希望对你有一定的参考价值。

下面是我制作的html代码。实际上,问题是当我调用函数get()onclick时,我的浏览器中没有出现任何变化。但是,在提交按钮上单击多次时,显示我想要的外观的即时更改,但持续时间非常短(比如0.1秒)。

var t = "top Text here";
var b = "bottom Text";
var i = "https://images.pexels.com/photos/1385326/pexels-photo-1385326.jpeg";
console.log(t, b, i);
memeCanvas();


function get() {
  t = document.getElementById("topText").value;
  b = document.getElementById("botText").value;
  i = document.getElementById("imgLink").value;
  console.log(t, b, i);
  memeCanvas();
}

function memeCanvas() {
  var c = document.querySelector("#c");
  var ctx = c.getContext("2d");
  var image = new Image();

  image.onload = function() {
    console.log("Image Loaded");

    ctx.drawImage(image, 0, 0, 400, 400);

    ctx.fillStyle = "white";
    ctx.fillRect(0, 0, 400, 50);
    ctx.fillRect(0, 350, 400, 50);
    ctx.strokeText(t, 10, 10);

    ctx.strokeStyle = "Black";
    ctx.strokeRect(0, 0, 400, 50);
    ctx.strokeRect(0, 350, 400, 50);
    ctx.strokeText(b, 0, 370);
  }
  image.src = i;
}
canvas {}
<body>

  <canvas id="c" width="400" height="400"></canvas>
  <form>
    <input type="text" id="topText" value="hahaha">
    <input type="text" id="botText" value="nooo">
    <input type="text" id="imgLink" value="chicken.jpg">
    <!--*here chick.jpeg is an image stored in my computer */-->
    <input type="submit" onclick="get()">
  </form>
</body>
答案

将您的<form>更改为<div>,以解决您的问题。

另外,请确保在imgLink上有一个有效的图像,我更改了这些值,以便您可以看到它的运行情况

var t = "top Text here";
var b = "bottom Text";
var i = "https://images.pexels.com/photos/1385326/pexels-photo-1385326.jpeg";

var c = document.querySelector("#c");
var ctx = c.getContext("2d");
memeCanvas();

function get() {
  t = document.getElementById("topText").value;
  b = document.getElementById("botText").value;
  i = document.getElementById("imgLink").value;
  memeCanvas();
}

function memeCanvas() {
  var image = new Image();
  image.onload = function() {

    ctx.drawImage(image, 0, 0, 400, 400);

    ctx.fillStyle = "white";
    ctx.fillRect(0, 0, 400, 50);
    ctx.fillRect(0, 350, 400, 50);
    ctx.strokeText(t, 10, 10);

    ctx.strokeStyle = "Black";
    ctx.strokeRect(0, 0, 400, 50);
    ctx.strokeRect(0, 350, 400, 50);
    ctx.strokeText(b, 0, 370);
  }
  image.src = i;
}
<body>

  <div>
    <input type="text" id="topText" value="hahaha">
    <input type="text" id="botText" value="nooo">
    <input type="text" id="imgLink" value="https://presspack.rte.ie/wp-content/blogs.dir/2/files/2015/04/AMC_TWD_Maggie_Portraits_4817_V1.jpg">
    <input type="submit" onclick="get()">
  </div>

  <canvas id="c" width="400" height="400"></canvas>
</body>

以上是关于检查这个javascript制作模因的主要内容,如果未能解决你的问题,请参考以下文章

几个有用的JavaScript/jQuery代码片段(转)

使用CSS和Javascript制作标签

未将位图设置为imageview

10个JavaScript代码片段,使你更加容易前端开发。

10个JavaScript代码片段,使你更加容易前端开发。

检查用户是不是在半径范围内